You can always use sprites to get rid of flicker. It happens because you write to LCD in runtime which is slow. Try sprites;
First, create a sprite and set the size. Then fill it in black to avoid overwriting text.
disp_buffer = new TFT_eSprite(&M5.Lcd);
disp_buffer->setSwapBytes(false);
disp_buffer->createSprite(240, 135);
disp_buffer->fillRect(0, 0, 240, 135, BLACK);
Then write desired text and push it to screen.
disp_buffer->drawString("This is some text", 0, 0, 2);
disp_buffer->pushSprite(0, 0);