If anybody else is having this problem, I have discovered something interesting. I still don't know what's going on, but even though I've explicitly set my environment.rb to tell Rails to be in production mode, it's not caching code. I just made a quick change to the text of a controller, and it showed up instantly on my site.
If anybody from dreamhost could explain why this is happening, I'd love to know. It certainly does seem to explain my recent slowness quite well.
If, on the other hand, there's some way I mucked up my rails upgrade to 0.14.3, and caused it to somehow stop caching code, I'd love to know that as well.