IMHO you need to rewrite the code to separate the different activities. Your code in loop() could be as simple as
void loop() {
readSwitches();
moveMotor();
updateLCD();
}
Have a look at Planning and Implementing a Program
With the code for the different activities in different functions it will be much easier to manage and to change one part without screwing up another.
If you want a responsive program you MUST get rid of all the delay()
s and use millis()
to manage timing without blocking. That is illustrated in the above link and in the demo Several Things at a Time
...R