I am not a VPS Professional, and I do not work for DreamHost. This is just my personal experience:
I also use WordPress, and have WP Multisites set up running several sub-sites. I recently switched to VPS, and had huge spikes that were causing my VPS to be rebooted periodically.
First, I went through and removed all unecessary plugins, and one in particular (a sort of analytics plugin) that I thought might be causing some issues.
Then, I set each domain to use mod_php 5.2.* in the DH Panel under Domains>Edit
Then Under VPS>Configure Server I enabled PHP Cache (xCache) and disabled any other settings (such as Jabber) that I was not using.
I went here: http://www.7is7.com/software/dreamhost/psmanager.html and downloaded and installed PSManager and PSRebooter, configured according to the instructions there, and set a Cron Job to reboot (using PSRebooter) twice a week at 2 in the morning (this clears out the cache and resets any tasks that are going bonkers).
Wham! No more problems. Server stays under 300mb at all times, and in the rare occasion it goes over (I was running some huge backup routines the other day) PSManager adjusts accordingly and then brings it back down when the task is finished.
Again, I am not any sort of IT VPS guy. Just read through some forums and played around until I found the settings that seemed to work for me.