We had the same problem. The only solution was to change the registration on the domain name to a gmail address or an address within the domain. (Our solution was to use an address in the domain so that the DreamHost system can send it email since it was sending it to the same mailers.)
THEN MAKE SURE THAT YOU CAN SEND EMAIL FROM DREAMHOST TO THE ADDRESS LISTED IN THE WHOIS RECORD. You need to create an email address on DreamHost and send it a test message. The DreamHost system MUST be able to send the address a message and have it received before the transfer will even be allowed to start. There instructions don’t say that. They simply say that you need to be able to read the email at the address, not that DreamHost needs to be able to send it.
After that, and allowing for the database update to be put through, then you need to CANCEL the domain registration transfer. That took a day or so to convince support and get re-credited for the domain transfer. Then resubmit the request.
What they really need is a button that says “Go look up the email address and re-send the transfer request email since there was a problem that has been fixed in the email address.” There is no such button on the transfer.