As someone pointed out, fixing disk permissions occasionally helps.
You might want to look into installing anacron. It will do an occasional permission fix for you automatically as well as clean/delete temp files, old logs, etc. And you can add some extra cleanup steps, if you desire, to the config files/scripts to clean out even more space.
Another place to look is ~/Library/Logs/CrashReporter and /Library/Logs/CrashReporter and /Library/Logs/DiagnosticReports. These places store, as per the names, crash reports and diagnostics. They generally are not huge, but, using iPhone as an example, when you sync it, it tries to send back to Apple these reports. And if iTunes (in the example) cannot connect to the server, the sync bogs down real bad. Not sure if there is some similar behavior with OSX. So, I have anacron toast the crash logs once a week. At a minimum, you might have a ton of these reports sitting out there, eating up your disk space.
One thing you didn't mention was: are you on or A/C when this occurs? On my SL rig, when the battery meter drops below 1:00 time left, the machine does go into a power preserve mode, and things like Flash, Java really bog down.