A couple of other thoughts
Speech recognition technology is increasingly available on smart phones, tablets and computers so it is getting more and more feasible to send messages by voice.
I sometimes use an alternative keyboard app on my iPhone. It is called Swype and it takes the place of the normal touchscreen keyboard. Instead of tapping each key to form a word you touch the first letter of a word and then slide your finger to each subsequent letter in turn. I find that this takes a bit less control than tapping each letter separately. The clever bit is that the app uses powerful predictive text methods to work out what you mean. This means that you don't have to hit the letters perfectly. It is available for iPhone and android, I'm unsure if it is on Windows phone yet, it is cheap to buy and worth a try.
EF