Have you got the latest version of 5.0.1. ?
Have a look in Settings > General > About and see what version your software is. It should be 9A406. If not then do a restore in iTunes. That's the only way to get it as its not an OTA update. This will help a bit as it stops the no service problem which makes the phone search for a signal all the time.
5.1 will help when released as it gives the ability to turn off 3G. Where I live the nearest place I get 3G is 10miles away so I don't have it switched on. This helps again as the phone isn't looking for a 3G signal. The only way to do this before 5.1 is released is either run the iOS 5.1 Beta 3 software (requires your phone to have its UDID registered with a developer) or jailbreak and install SBSettings.