I currently have a core 2 e8400 and 6770's in xfire. I want to update to be able to play battlefield 3 smoothly. with limited funds to upgrade should I hold off and upgrade to ivy bridge or swap my xfire setup for a GTX 670?
Battlefield 3 is quite demanding, and is one of only a handful of games that truly uses your CPU and benefits from a faster CPU, or more threaded CPU. Your CPU is definitely your limitation, firstly, it's an ageing Core 2 Duo, secondly, it's only a dual-core chip.
Your GPU setup is more than good enough to run Battlefield 3 at medium-to-high settings at 1920x1080, so I would suggest waiting and upgrading to an Ivy Bridge setup. You could get a decent Core i5, 4-8GB RAM and CrossFire-capable motherboard for only a little more than what a GEFORCE GTX 670 would set you back.