If you've a sufficiently decent input manager or a programmable keyboard, you can have Caps Lock play double duty as both. I am an emacs and evil user, so I have tapping caps configured to send ^] and holding it to ^. Best of both worlds!
It was almost life-changing when I figured out how to do that on both my work Macbook and my home Linux machine. As another evil mode user I second what you said
I use a Mac, and it sounds like an interesting feature to have. How to do it?
Another possibility is to not use the ESC key in vim. ESC just sends CTRL-[, and with your hands in normal position on the keyboard, CTRL-[ is fast and easy to type.
With CTRL mapped to directly left of the left pinky (the CAPS LOCK position on most keyboards), then an ESC via CTRL-[ is just a slight pinky movement on both hands.