Should I update to sql server 2008 sp2 before restoring the db's or do the update after? I'm making a move from SQL Server 2008 to SQL Server 2008 R2 (Azure VM) as part of a hosting provider switch (from MyHosting to Azure). Should I update the VM to R2 SP2 before restoring the db's or do the update after or don't even do the update?
That does not matter. When you upgrade an existing instance with a database attached SQL Server automatically upgrades the database too. If you attach the database after the upgrade, it goes through the same process. 

In either case make sure that the database is at the right compatibility level. While usually nothing happens, you might run into problems if the database is still at 80. Changing the compatibility level however will change behavior, so make sure you test you application well.