What is the difference between "zbyt" and "za"?
There's not much of a difference. According to a famous linguist, professor Bańko, "za" can always be changed to "zbyt", but not always the other way round. It's hard to set a rule for 'when it can't be done'.
So to be absolutely safe, I can always use "zbyt" and it's not going to go horribly wrong, right?
I believe so, but then I also think that the worst thing that can happen with "za" is something sounding 'a bit strange'. Although maybe there's something I'm not thinking of.
Is "ten hotel dla mnie jest zbyt drogi" grammatically wrong?
I'd prefer "jest dla mnie", but your version is fine as well. Added now.