1. 'For' is the "correct" preposition to use here. You can use 'for' with 'a long time' in any context: past, present, future, simple or continuous, positive or negative.
It's possible to replace 'for' with 'in' in only a few contexts, mainly with negatives and superlatives in the present perfect and past perfect, for example "It's the best meal I've had in a long time" or "He hadn't seen his family in a long time". Some people see this usage as colloquial/non-standard.
If in doubt, use 'for' : 'for' is sure to be right, while 'in' is likely to be wrong.
2. The sentence is wrong. You can't have 'ever' and 'in a long time' in the same phrase. You can have one or the other, both not both.
''This is one of the best games I have ever played." = in my whole life
''This is one of the best games I have played in a long time.'' = "The last time I played such a good game was a long time ago."
Choose whichever one of those sentences you like .