I've run into this problem myself. For me what works is keeping things basic and picking a clean font that is legible at the sizes you need them to be. "Straighter" fonts are more legibile when they are at smaller sizes. Some good advice that was given to me once was to keep fonts straight and horizontal where possible as that facilitates readability as opposed to warping words. Warping words (by which I mean putting them on curves or on waves) can be used but you have to be careful in how the program does it as some will warp the individual letters.
There is a great tutorial out there about word placement I will try to do a quick search for shortly. Basically you want words to be fully in or outside of areas (say fully on land, or fully over water). Mountains and forests can chop up words and rivers can be annoying too and should be avoided.