I was in your situation a while ago - wanted to find open-source and privacy respecting keyboard that provides decent user experience. Turned out there aren't too many of those out there. AnySoftKeyboard is a good choice. I started using it just over a year ago and never looked back.
https://anysoftkeyboard.github.io/