A lot of people are saying "It works at first, but then starts to get slow". One possible reason for this is because the "mobilesafari" (browser) app is running in the background. When you first restore and start using the phone, chances are the browser isn't actually running, and everything seems fast. As soon as you visit a webpage and then return to the home screen, safari will continue to run in the background chewing up memory and impacting performance. You can usually mitigate this by closing safari. This is done by first closing all "tabs" you have open in safari before exiting. If you leave safari when there are no tabs open, it will close down rather than remaining open in the background. This can be seen easily with any process monitoring tool (e.g. iStat) which shows that mobilesafari remains open in the background most of the time, and consumes a fairly substantial amount of available memory.
I found this to be a problem in 3.1.3 also, and I pretty much avoid safari altogether now. The "Perfect Browser" app is a better option imo, and has a lot more functionality as well as never running in the background (and thus stealing resources from other apps).
So, bottom line, try fully closing safari before using the other functions on the 3G and see if it helps. I believe it makes quite a noticeable difference in performance.