Ok so since you have a 3d monitor and are going to be doing some 3d gaming you should probably go Nvidia because 3d vision has better software support than HD3D
So go for a GTX 670 and it will cost you about 400$
There's no point paying extra for the 680 because it doesn't offer that much extra performance than the 670 and besides the 670 can be OCed to 680 speeds pretty easily.
I am going to recommend this bad boy. He's a smidge on the feisty side with his 4GB of GDDR5, so he'll future-proof you so that you'd be able to handle multiple monitors should you ever choose to go that route in the future:
If you play the games in 3D with the proper glasses and everything setup to view it then a gtx 680 with a decent factory overclock will probably be a decent enough performance boost over a decently overclocked 670 to be visible to you.
However the gtx 670 should be completely adequate for gaming in 3D at 1080p as well.
If you are trying to get BF3, Crysis 2, etc. to look their best you should also make sure you have your CPU overclocking to above 4ghz. That should make sure your gpu's power isn't being limited by anything.