Help with Design: Using processor time efficiently when dealing with serial

If I used a finite state machine to process requests from the display, wouldn't I need to create a state for every single combination of requests i could receive from the display?

No a state machine tells you only what you have to do now, when you have done it you move the machine on to the next task.
By using this with the millis timer you can sort out what to do when. There is no need for a delay.