Best way: Yes, create mydomain.com first, then set up the subdomain. Being lazy, I'd just go with this, and add the IP address to your DNS and be diligent about keeping the DNS entry up to date.
Another option (but I've not tried) is to use a CNAME entry with your DNS provider. Create MYSUB.dreamhosters.com, then add a CNAME that points sub.domain.com to MYSUB.dreamhosters.com. This is similar to the last idea on your list, but without the hassle of a dedicated IP address.