It's not quite a process monitor, but I would suggest installing Munin (
http://munin.projects.linpro.no/). That way, when this next happens, you can see if there was anything that accompanied that, such as high levels of network traffic or disk activity.
Based on what you say so far, I'll bet you run out of RAM and started to chew up swap, which would explain both the CPU and disk usage. One way munin can help is it can show you RAM usage over time and you can see if the amount of used memory slowly went up over time until this happened.
Good luck!