The problem with being an armchair engineer is that an actual one might notice when you are wrong.
What you describe isn't even close to the real memory model in OS X. Each app has their own, isolated, 2GB memory space (even if you don't have 2GB of RAM). An app doesn't "give it up" for another app, nor is any one app aware of any other app's memory (unless you explicitly share memory between the two apps). The kernel itself decides what parts of what apps are actually in RAM, and which parts aren't.
What is more likely to cause a cascading failure like this is that the kernel or some other core component gets into a bad state... the Window Server comes to mind in this case. All drawing calls go through this Window Server application, and if it mis-behaves, and can very likely crash other apps with a GUI, even though the kernel/etc is still rock solid. The description here is definitely makes me think of Window Server as the culprit. It is a user-land app, and can't take down the system on its own (unless it causes a failure in the kernel), but it can sure cause the experience the OP is reporting. I haven't had Dashboard trigger it, but I /have/ made the UI completely unusable, and can still login remotely using SSH, and run command-line applications that way.