I have some news that should resolve the overheating issue that has been plaguing a percentage of iPhone 3GS owners since its release. I have not experienced this issue myself, but have a very reliable source who has and who claims to have solved it. It apparently has to do with a corrupt software image of OS 3.0 that was flashed onto the devices during production.
If you are experiencing this problem, the solution is to do a full restore of the iPhone OS 3.0 software from iTunes. This is accomplished by selecting the Restore button in the device Summary tab. DO NOT restore data and apps from the backup of your device that iTunes creates—this may restore the corrupt image. Restore the iPhone to its original condition and then manually reinstall all of your applications and data.
This is a time consuming process, but I have been assured that this will solve the overheating issue.
Steve Green (iPhoneLife.com/blog)