I'm assuming this question is about shared hosting. (The answer is different for VPS and shared hosting, since those products both allow you to manage the httpd.conf file.)
With shared hosting this can be done with dedicated IP's, and the expense of at least one domain that has dreamhost nameservers. This option however gets expensive quickly as each domain you forward in will require it's own unique IP add-on. Let's say you have 3 sites called example1.com example2.com and example3.com all with external DNS, and a 4th domain called d_dns.com that has dreamhost nameservers, thus allowing dreamhost to manage the DNS. You would then fully host example1.d_dns.com, example2.d_dns.com and example3.d_dns.com. Then add a unique IP to each on the of those 3 sub domains (a unique IP is only good for one sub-domain in shared hosting because you have no access to edit httpd.conf). Once you have done that, in your external DNS you would add CNAME records for example1.com -> example1.d_dns.com, example2.com -> example2.d_dns.com and example3.com -> example3.d_dns.com
As you can see however, this gets expensive quickly since each domain/subdomain forwarded in this fashion requires that you purchase a unique IP for it.
On the other hand if you are really afraid the dreamhost panel might be unavailable for a long time, another alternative (and probably much less expensive) is for you to decide what registry you think has enough redundancy that they wouldn't be down for any extended period of time and transfer your registrations there. Once the registrations are transferred away just simply leave their nameservers as NS[1,2,3].dreamhost.com allowing dreamhost to manage the DNS. If the dreamhost network should become unavailable all you would need to do is log in to the alternative registrar and change the nameservers to point to whoever your new host is.
Many people purposely use alternative registrars for this exact reason (among others).