I think cities are the real problem. Because you are in a big city no matter what connection you get it will be always slow. You will never get the best speeds due to the amount of people using it.
All the mobile service provider can only provide you around 150 kpbs which might sound big but that's only 15-20 kb. At their peak, but you will have hard time hitting those peaks if you are in a city.
My reliance connection when I am in a city like Madras (Chennai) only gets around 10kb, but when I am out of the city I get 15-20 kb easily.
So stop thinking its your phone or the provider that is to blame. Even if you get the best phone and the best provider you will all have the same experience. Don't think this will improve, it won't because by the time 3G rolls in India the content provide will be onto the next thing and they will need even more speeds.
For example when first gprs came out mobile web pages were all the norms. Which you can see quite fast now a days on any Indian mobile provider, but the world has already moved on to video, and online document editing, maps and full web experience with iphone. Which gprs will never be capable of, so as then head line says stop dreaming and get real.
The better option would be to get broadband connection.
By the way if you want a nice page for those mobile sites try www.prasanthtechblog.com/m/ I have put all the mobile site for my own consumption up there. You too can use it, let me know if I should any more site to the list.