Most beginners go for a multi processor system when they run out of memory but there are many ways of reducing memory usage. The biggest one being is to use the U8g2 lib a bit more smartly, and split the display buffer into a quarter of the size and then have four writes to make a full screen display. Details of how to do this are in the library documentation and examples.
Next all literal strings, things in quote marks, take up program memory, look up the Arduino’s F macro to see how to cut down on the memory that takes.
Then see if you can save some bytes by making variables that only hold small numbers into byte types instead of ints.