I have the same problem. Here is what I have found. If I reset network settings it doesn't help, if I reset all content and settings it doesn't help, if I restore the phone it fixes the problem
BUT I can not restore my back up without reintroducing the problem. As soon as I restore the backup it's broken until I restore it again. I could set it up as a new phone but then I would lose all my app data.
When I look in the console log using the "iPhone Configuration Utility" (you can download it for free from apple.com) I see this error when I try to use edge/3g which I believe is related.
turtles-iPhone CommCenter[32] <Notice>: SIM never inserted so no settings
turtles-iPhone CommCenter[32] <Notice>: Invalid PDP Context -1 specified
Calls and texts work fine. Just not 3g/edge data or visual voicemail.