This is something I've often wondered myself. The 7970 has 50% more bandwidth than the GTX 680, but the GTX 680 can easily hang with the 7970, or outpace it at 2560x1600 with AA and all the bells and whistles in many titles.
It's not until you go above 1600p that the Radeon's extra bandwidth begins to assert itself it seems. I guess NVidia's memory controller and bandwidth enhancing/saving technology are more efficient.
Even the GTX 770 doesn't really gain much from the extra bandwidth (with the exception of a few games) which implies the GTX 680 isn't really bandwidth starved..
I think it may be a matter of "good enough", where more bandwidth isn't really necessary because both cards have enough to push 2560x1600, but past that point the bandwidth starts to become a bit of a bottleneck. I doubt it is something like the 680 having a more advanced MC (IIRC, GDDR5 memory controllers are all standardized?).
Given how Kepler is performing equally with "less" resources, I see a few possibilities.
1. AMD drivers still aren't giving GCN its full potential? Or GCN simply is good at GPGPU, but not really games.
2. Kepler is superior/equal at "standard" GPU work (polygons, texture fill, etc.) and hence it is a smaller die than Tahiti, due to no/limited inclusion of architecture features necessary for GPGPU. If many games were to start using compute, GCN would gain more performance relative to Kepler.
GK110 is almost twice the size of GK104, but doesn't deliver nearly 2x the performance. Tahiti is ~60mm^2 bigger, but this could easily be attributed to the larger memory bus (significant die size hog). If Tahiti's "core" is the same size as Kepler's "core", yet gives equal game performance and better compute performance... then wow, that's pretty impressive. I just hope GCN2.0 isn't a disappointment, and I hope that Maxwell will bring GPGPU ability back into the equation for Nvidia.