Google Authenticator is a two factor authentication system: it requires you to provide something you know (your Google account credentials) as well as something you physically have (your phone, in this case).
Historically authorization has been one-factor: something you know. Even key-based could be considered something you know as it's really nothing more than a really, really long password you've saved into a text file.
It is ridiculously more secure. After logging in with your Google account you will be presented with another form asking for your key. You'll get the key from the "something you have", Google Authenticator running on your phone.
Where does this key come from? I haven't reviewed Google's specific implementation so I'm going to talk generically about RSA's SecureID - which in fairly certain was the first implementation of two-factor authentication.
Although the key looks entirely random to you and I, it is actually generated by a complex and highly guarded algorithm (math problem). This math problem uses some information about you, along with the time, to generate a key that is only valid for short periods of time, usually 30 seconds. When you send this key to Google, the same math problem runs on their servers - if the result is the same, you're good!
I believe I may have glossed over this fact but it's important to note, the only data transmitted between the client and server is the key. Not much else for the most part and certainly nothing used within the algorithm. If it can be transmitted it can be intercepted.
Some of the cons: you can't login unless you have your phone with you which of typically not typo much of an issue. If you lose your device you won't have access but a phone call usually clears that up (they revoke your previous algorithm and setup a new one). Since time is a factor that can dinginess become an issue (think dying watch battery runs slower).
Pros: If I get your account info I still can't access your account; vice versa, get your device but I don't know your account.
Technically, yeah, it's possible to get running on your VPS. I'd have to review Google's documentation before I advise how feasible it would be. You'd also only be able to implement it where you have root; it would require changes on the server and I doubt your provider will let me dabble with their WHMCS install (yet, but that's a story for another day).
My advice: stick to keys, keep them backed up and install a script that emails you when someone gets in. On top of that have a contingency plan. For me, I have a secret phone number I can text a password to that activates SHUT EVERYTHING DOWN mode. My keys are revoked, passwords changed and only one user can login from one IP, plus a reboot to make sure the bad guy is gone.
Finally, if your provider sends you a password in plaintext, find a new provider. That's the most common security vulnerability I find - most providers simply don't know what they are doing or how to properly secure their service.
If there's interest I can clean up my OH SHIT script and release on GitHub, although I'd have to charge for the text receipts (or you implement your own). On a similar note: I know I've seen Google OAuth available for most of the control panels, convince your provider to implement that. Then Google's in charge of securing your password not them. On my phone or I'd look for it, but if it's not open source and there's interest I could whip something up with the assistance of control panel licensees. Same goes for two-factor.
Hope that helped!