In overview, approach this from the point of view that there are two distinct tasks. Each of these tasks each have two major sub-tasks.
1a) configure your google account for the domain.
1b) change your domains DNS, so that new email will be directed to gmail. I just tried the page I had bookmarked to get this process started and it seems to 404 now. Mostly likely since I believe use of gmail with a custom domain isn’t free anymore. Try googling “setup gmail with a custom domain”.
The second major task is moving your existing email (or deciding that you are comfortable leaving it sit on the dreamhost server).
2a) The basic procedure is to configure both your gmail account AND dreamhost email account in the same email client (such as Thunderbird, Outlook, etc). Since you have redirected the domains DNS to gmail at this point, what you will do is use the appropriate *.mail.dreamhost.com hostname for your email server. Go here to figure out which hostname to use based on your account mail cluster. Using this method, for username you will need to specify your fully qualified firstname.lastname@example.org email address (and password) for the email.
When you have successfully completed 2a), you will be able to send/receive email via the gmail server, AND your dreamhost email account with the old email will be will be available in the client.
2b) is move the email between folders (in this case those folders are on different accounts). That is, selected archived email on the dreamhost account and move it to a folder on the gmail account. Your mileage will vary greatly here. There are many factors that determine how efficient this process will be. Those factors include: your local bandwidth, the contents of the email archive (10,000 text only emails might be much smaller than 1000 emails that all have giant spreadsheets or media files attached) and how the email folders are organized even. You know your old email best, and you will have to experiment what size chuncks to use. If you have text only email I would try going folder by folder for the move. If on the other hand you have a folder with large attachements, then i would move that in smaller groups. The goal being if the process errors out along the way, you know where and what to restart to get it going again, that’s why I recommend smaller chunks, rather than select all and move all at once. Moving the archived email from old to new may take a day or it may take a month or more, it just depends on the contents of the archive and bandwidth.
If you plan to keep your dreamhost account, you might elect to skip the move 2B, you can still access your achieve via the dreamhost server via the mail client (or even webmail.dreamhost.com – just remember to use the full email address when logging in)