With a $250 budget, the best card that you can get is a Radeon 7870 GHz Edition or a GTX 660. However, unless that CPU gets replaced with a Phenom II x4 955 BE or better, it would probably hold the graphics back in a lot of games, although overclocking would help if you're comfortable with that. You could try unlocking and if it works, great, but I've heard that it can cause issues and has a low success rate with the Phenom II x2s.
Nvidia is slightly favored in BF3 and usually has slightly lower CPU overhead, so I think that I'd recommend the 660 over the 7870, but if you get a faster CPU, I'd say to choose the 7870 if you overclock and the 660 if you don't or simply want a Nvidia card.
With that CPU, you wouldn't have enough performance for CPU physics IIRC, so if physic/PhysX is important to you, I'd recommend the 660. The 8600 GT isn't really fast enough to be used as a PPU for the 7870 IIRC, so it probably isn't good enough to be used for PhysX if you went with the 7870, hence the 660 recommendation.