You might not like this answer, but I really do want to give you “quality” advice, so “here goes”:
I do that all the time, with Joomla! sites, by using the “free” something.dreamhosters.com sub-domains, and it works really well. You can also do the same thing with a subdomain of any of your own domains; the process is the same.
I’m wondering why you say that? It’s not much of a headache at all (it is the easiest way to do it, IMHO). It really is a very easy and painless process to do, and only takes about 5 minutes in most cases. Do you really understand what is (and is not) involved in such a change?
First of all, the database is not the problem you seem to feel it might be … you can just create another host alias for it under the new domain name when you are ready to launch if you want to, but you don’t have to … you can just leave it as a host on dreamhosters.com if you want - it will make no difference to the operation of the new site.
Next, if you create this “dev” site as the same machine user as the new domain, you don’t really have to “move” anything… you can just rename directories and make a couple of edits to the Joomla! configuration file(s) and the database. It takes 5 minutes!
One potential “gotcha” might be encountered if you rely upon “one-click” updating of Joomla! to keep your site current. Renaming (or moving) the site after you “one-click” installed it will “break” it’s ability to be upgraded via the one-click system. Upgrading Joomla! manually is, however, pretty quick and easy, so I wouldn’t let that stop me.
I suppose you could “recreate” the new “one-click” Joomla! installation when you are ready to launch on the new domain, re-install all your components, templates, and extensions, and then export your data from the dev site and import it into your “new” site, but that is a lot more work, and is considerably more complicated, than the method I’ve described.