Are you fundamentally opposed to doing the remapping at an OS level? I suspect that most, if not all, OSes permit for such remapping in one way or another. For many, that might be an acceptable workaround.
I also think I vaguely recall some USB device from quite some time back that you could plug a keyboard into that proxied for the keyboard and provided macro functionality at the keyboard level for keyboards that couldn't do that, and I could believe that it might be able to remap.
searches
Probably not the device I was thinking of, but this appears to be a dedicated USB remapper: