Out of those two GPUs, I would definitely recommend the GEFORCE GTX 670. The GTX 670 is the third-fastest GPU in NVIDIA's Kepler range of GPUs under the slightly-faster GTX 680 and the dual-GPU from NVIDIA, the GTX 690.
The Radeon HD 7870 on the other hand, is a mid-range offering from AMD. Their equivalent to NVIDIA's GTX 670 would be the Radeon HD 7950, which is AMD's second-fastest GPU as they don't have a dual-GPU HD 7000 series card just yet.
As for running your games at 1080p on your 46" HDTV, your Core i5 3570K is absolutely fine, and a GTX 670 would work with that perfectly. You should be able to run all games at maxed out settings at over, around, or just under 60fps, depending on the game and settings used. The HD 7870 might have some issues pushing 1920x1080 at full settings in games such as Battlefield 3, but the GTX 670 shouldn't.
Definitely grab that GTX 670 and get ready for some insanely good times whilst gaming!