Don't be satisfied with a better application, instead make the keyboard more ergonomic by placing physical buttons behind the phone, thus enabling you to type with four finger while holding the phone in the same hand or to type with eight fingers while holding the phone in two hands. This prevents stress to your thumb while using it to type or gesture while holding the phone in the same hand or stress to your index finger while using it to type or gesture while holding the phone in the other hand. In addition, change the roll of the buttons dynamically depending on the orientation of the phone (portrait or landscape) and on the hand holding the phone (detectable using an optical sensor), so that the QWERTY-like layout changes according to how the phone is held, enabling each finger to access more or less the same buttons as on a regular keyboard, no matter how the phone is held.
I have recently heard of the new transparent phones. With these new phones, instead of only visualizing a keyboard on the screen and pressing on the equivalent buttons behind the phone, you could display semi-transparent keys above the application and see your fingers below these keys,
It seems like someone has actual made one of these: