I haven't had this exact issue, but I can somewhat relate. My phone today starting getting EXTREMELY SLOW 3G speeds, even though I have 5 full bars of 3G. I put my iPhone 4 side by side with an iPhone 3GS and cleared the history, cache, etc. on both and loaded up a bunch of sites. 90% of the time, the 3GS was about 10 times faster than the iPhone 4 (5 second load time vs. 50 seconds). Even when running speed tests (speedtest.net app) the iPhone 3GS would consistently get around 1800kbps down and 1400kbps up while the iPhone 4 would be sporadic, ranging from 0 - 2000kbps down and up. What I noticed when running this test on the iPhone 4 is that there is a delay when the test starts. I'll hit begin test and the meter will just sit at 0 for about 5 seconds, then it'll slowly starting going up (but not by much). It's very weird, and it only started happening today. So yeah, not quite the same issue as yours, but I can relate.