I always seem to get between 2Mb/Sec and 4Mb/Sec on o2 - by far the fastest 3G experience.
Not sure what happens if you go over the cap as i'm on an unlimited tariff.
o2 are upgrading every site to 3G900 so speeds and coverage should improve.
I was on 3G900 briefly but after just checking i'm back on 3G 2100. Not sure if they rolled back. Seems odd.
I had excellent signal for about a week then i went back to occasionally switching back to EDGE in 2 rooms of my house, as i live on a fringe area for 3G. But 3G900 gives me a much better signal.