Two notes:
For buying new keys, there are many inexpensive (non-mechanical) USB number pads you can get for $10 or less. It's a good way to get started before committing to something more expensive. Or you can even just use an entire second keyboard; most software will let you bind shortcuts to a specific keyboard.
For software, Hammerspoon [0] is a free option that can handle arbitrary key mappings/macros; however, you'll have to program it yourself, it's more of a hacker's tool than something with a friendly UI.