How to make this run faster/more responsive?

You will get help faster if you post the code here, using code tags when you do.

Breaking the program into functions is probably a good idea but it won't make loop() run any faster. It is unlikely that you will need interrupts to read pushbutton inputs.

My crystall ball tells me that you are using blocking code such as delay() or while that cause the program to be slow at reacting to inputs. Post the code then we can see.

In the meantime look at Using millis() for timing. A beginners guide and Several things at the same time and look at the BlinkWithoutDelay example in the IDE to see how to use millis() for timing, which I expect you will need to do.