digital read/write not working within switch/case serial loop

Can I change the mode within another IF statement from outside the IF statement?

You keep using the definitive article - the IF statement. There is more than one if statement. You need to clarify what if statement you are referring to.

Most likely, the answer is yes.

I need to be able to interupt {mode = 6} with
the switch, making the program stop?

You don't want to interrupt mode 6. That implies letting it resume after the interruption. You want to terminate mode 6. Anytime you are in mode 6, you can read the switch state, and change to a different mode if the state is to your liking.