Acabou usando o AutoHotKey para fazer isso. Meu numpad 4,5 e 6 são mapeados para volume baixo, mudo e volume para cima, respectivamente, mas eu ainda posso usar o 4, 5 e 6 quando o numlock está ativado.
Este programa pode reconhecer o NumpadLeft como uma função separada do Numpad4. Não tenho certeza se há uma maneira de realmente remapear essas chaves separadamente em janelas como eu queria originalmente.