I am in the same boat.. I would go with a 7950 but if I had to pick from your list.. 7970 it would be.
Also where are you getting a 7970 for $300? the best price I have found is $368.27 used on amazon..
-Wasted
It's a local seller. I decided to not get either though, just because of the model of card, the cooler on it, and I could get a new 7970 for about the same price if I sold the free games that came with it, but with a warranty as well, and my choice of brand.