One solution to the keylogger problem would be the same as for Viruses and Worms: install a software that does an integrity check on systems.
Usual PCs running Windows in a productive environment change very little. Once a stable environment is defined, a guardian software (now that's one thing I would like to see integrated into the OS) could stand watch (sic!) over the software base and refuse to a) let other software install at all and b) give software access to devices like the keyboard.
Such software does exist. It is the ultimate A/V software because it does not need any update.
It's a question of the maturity of the organization whether they manage to realize this, whether they manage to establish and enforce a stable production environment and, finally, whether they run Windows with least priviledges (read: as a non-administrative user).