You can definitely keep multiple JDK (and JRE) versions on a Windows machine. Usually they end up as subdirectories under C:\Program Files\java. I have 4 on my Windows development box, including 2 1.5 releases and 1 each JDK and JRE 1.6 (not the same version). For Tomcat, just set the JAVA_HOME to point to the JDK (you can't use JRE's) for the
Java release you want that version to run under. You CAN have multiple Tomcats using the same JDK version and thus JAVA_HOME's with the same value, lest there be any confusion.
The only really sticky thing is that Windows has GUI-controlled global and per-user environments, which can make it a little more difficult to keep multiple JAVA_HOME settings. Not a problem when launching from a command line, where you just jam in a SET JAVA_HOME before you launch Tomcat, but I'm less clear on how you'd do that when running Tomcat via the Service Manager.
Finally, remember that filenames with spaces in them cause problems, so it's better to use the 8.3 version of the filename when setting JAVA_HOME. Usually, but not always, the shortname form for "Program Files" is "PROGRA~1".
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.