How to clear a text before a new text is placed in some spot

Right before the tft.println is the best place. You will probably still have a slight flicker, have you tried just printing spaces, that is a bit faster than fillrect.