Websites aside, is it theoretically possible for the bitcoin-qt client to support some kind of 2nd factor authentication?
Yes/No. It does support two factor authentication: Thats what wallet encryption is, you're protected by knowledge of the password and possession of the wallet file.
But no, because control over your computer moots security provided only by your computer.
There are a number of hardware wallet devices coming out which outsource possession of private keys to USB dongles that require a button press to authorize a transaction... those will keep you safe even if your computer is compromised.