Did you try swapping or replacing capslock w/ ctrl? Something like this...
setxkbmap -option ctrl:nocaps
xmodmap -e "keycode 107 = Control_R"
I would occasionally experience some pinky pain until I did this. Losing capslock is mostly inconsequential (you can always use upcase-region).