Yeah, GTX460 1GB is a good choice. Or perhaps an HD6870. I don't think that I would go any higher, with only a 3.0Ghz dual-core, but many games will probably be able to take advantage of at least that level of GPU with that CPU.
Or you could consider getting a C2Q chip too, for BF3.
Btw, E5200 would OC to at least 3.5Ghz, yours might do even more. (Had a friend with an E5200 @ 3.75, but slightly too high vcore apparently causes it to degrade. It's at 3.5 now, with lesser vcore.)