I have looked at Keytweak, which I think would work, but requires a PC reboot each time as it alters the registry which is a major pain. I tried AutoHotKey which works in Windows environment, but when in game, it has no effect.
(my use-case is for rebinding keys for comfort, not cheating!)
Oblaram the Carpal Tunnel Sorcerer
When I played Diablo 2 I used AutoHotKey to disable my windows key and alt-tab function (to avoid minimizing the game and getting killed). I did so by rebinding the keys. My point is it worked in D2 so I'm not sure why it would not work in D1.
You might want to test it for other games and double check your script to make sure it's functioning correctly. You might try adding this line to the top of your AHK script:
About cheating... And this is going to be subjective but the inability to rebind the keys is part of the game. If you rebind them you are giving yourself an advantage that other players do not have, which could be said to be cheating. Everybody else is stuck using the default keys. You might not see that as cheating but some people will. In E-sport tournaments for example everybody is forced to use default keys to keep things fair.