As a software rather than keyboard hack, I've been using and loving the following setup on macOS:
* Remap Caps Lock to Ctrl
* Then use Hammerspoon[1] to map Ctrl(hold) / Esc (momentary press)
This essentially puts both Ctrl and Esc in a comfortable position on the home row, probably my favorite "ergo hack" ever.