My iPhone 4 with iOS 6 is now connecting to 3G. The problem was that based on the T-Mobile coverage maps I thought I was in areas that should have 3G but didn’t. The coverage map for these areas said “Your 4G LTE high-speed coverage is Good” or in some cases “Excellent” but this really meant “you’ll only get 2G in these areas.” Driving around recently I was able to find other “Excellent” areas that did give me 3G.
So, to answer my original question: iOS 7 is not needed.