You could try changing your keyboard layout. The qwerty layout was not designed to be ergonomic. It was designed to prevent the metal arms in typewriters from jamming, something that shouldn't be a problem on your laptop I think.
Dvorak is one possibility, where the characters are rearranged, so that the characters you type most often are on the home row, where little finger movement is needed.
Neo is another layout, which not only rearranges the characters. It also introduces two new modifier keys. Those modifiers make it possible to put all the characters you mention in good positions. One key used as a modifier is caps lock, so CAPS-a becomes \
, CAPS-d {
, CAPS-f }
and CAPS-e _
. Here is an image.
Neo is a German layout, so the first two layers (lowercase and uppercase characters) are not good for English text, but you can download the xmodmap and just use the third layer for "programming characters".