It looks like you want to alternate between a button press starting the reaction timer and the button press being the response to the reaction timer. You need a variable to keep track of which meaning the button has. How about calling it "TimerRunning to mean the test has started. boolean TimerStarted = false;
Then, if the variable is 'false' you use the button to start a reaction timer test and if it is 'true' you use the button to end the reaction timer.
Your sketch is only looking for a change in the button input. That means it will react when the button is pressed AND when the button is released. You probably only want to react when the button is pressed:
switchState = digitalRead(switchPin);
if (switchState == HIGH && prevSwitchState == LOW) {
Don't forget to set 'prevSwitchState' to 'switchState' at the bottom of loop().
That isn't doing what you seem to think. Because it is outside loop() or any other function it only does anything at compile time. So time3 is always 0. You need to specifically set time3 = time2 - time1 inside loop() just before you lcd.print() it. And print the "ms" separately. Adding a String to an integer isn't going to get you anything sensible.
I'd suggest before you start writing your code that you write a simple explanation of what you want the program to do; a "top down design" in "pseudocode".
eg
Display message
Start timer
if the switch is activated{
display the time}
...