I work in Two Allen Center in Houston, TX with coworkers on both ATT and Verizon, we have iPhone 4 and 4S. There are about 50 iPhone users I've talked to and who all have fine service outside of the building, but once we go inside the phones show 5 bars of 4G service, but in reality have no connection at all. Literally as soon as I leave my highrise office building the bars will drop to 3-4 and I will regain signal.
Given this info, we think that this issue is due to interference with the 4G signal. Possibly a signal booster since these are very common in high density urban areas to help the signal get through buildings, walls, and glass.
We have found that Verizon doesn't have the issue and ATT does. On the ATT 4 you can at least get a signal if you disable 3G, but on the ATT 4S this toggle is not in the settings anymore.
I did some really basic googleing and found that Verizon and ATT 3G/4G service have a few overlapping frequencies. So possibly if there was a really strong Verizon booster in the area it will interfere with the ATT phones.
For those reasons I don't think a new SIM will help, but I'm going to try. And the Locations Services doesn't help either, it DOES make my phone say No Service of go to EDGE, but I still get no signal. In the end, I think this is due to some interference in highly urban areas.