Wenn du nich so nen riesen Gelbeutel hast wär vielleicht ne 6600GT nicht schlecht- ist zwar nicht optimal, würd aber schon helfen, denk ich (overclocked). Den proz übertakten wäre auch ne (günstige) Option, soweit du temperaturreserven hast (vielleicht n neuer Kühler?)
BF2 ist, wie ich aus eigener erfahrung weiß, ziemlich RAMhungrig... 2 GB sind da wohl gut.