Okay, here are some possibilities to fixing your problem.
First.
Is your keyboard USB or PS2?
If it's USB, try using a PS2 keyboard or vice versa and see if that will help at all.
Second.
Do you have Remote Desktop Enabled on the machine? Can you get into it using a remote terminal?
Do you have any other "remote administration" tools? I.E. Remotely anywhere, remote desktop, logmein, VNC, etc.?
Third.
You said, you can get into the system in safe mode using the keyboard. As unusual as it may be, you might be able to use the cleanwipe utility.
You might be able to reinstall the product, which should restore functionality.
You might be to do a rollback of your system (system restore) if enabled.
Fourth.
If 1 and 2 have not worked, and you want to skip over 3... There does exist an application called XVNC.
What this will allow you to do, is take over your machine, without the need of having VNC client installed on the client. Certain conditions need to be true for this to work:
- port 5800 must be open
- you must be on the same subnet as the machine
- you must be able to authenticate to the machine; the machine you are on has administrative priviledges over the network/domain
- OR matching versions of JAVA.
Fifth.
You can create an MSI package for one of the tools mentionned above in "Second." and using a GPO policy pointed specifically at your problem machine, initiate an installation of said remote login software. Once the GPO is applied, reboot the machine for the installation to take place. Once installed, you can use remote connectivity to the machine in order to rectify the problem you are having.