Oops, let me clarify; if you use CC65's ".interruptor" system, then CC65 will replace CINV with its own IRQ handler (which calls all interruptors), but it saves the old value of CINV so it can jump to it when it finishes, so that's how I made an interruptor and how the kernal's IRQ handler was still working.
If you don't mark anything as an interruptor, then CC65 doesn't touch any of this, and you'd be free to modify CINV yourself however you'd like.
For keyboard handlers, CC65 doesn't do anything with $32E as far as I can tell, so you can modify it however you'd like.
Were you using a makefile to build your program, or did you just have a script or batch file that called the compilers or called CL65?
I'm really sorry that setting up the development environment is the hardest part of programming, but I promise we all share the same frustration.
Edit: If CC65 came with Cygwin, then from what I've read (I'm not familiar with Cygwin I'm afraid), you should be able to run the setup program again, and you might get the option to update the various programs that are installed along with it, like CC65. If not, no big deal; if you download CC65 from Github, you can just unzip it anywhere, and then add the "bin" folder to your PATH variable in Windows (in your environment variables), and you'll be able to invoke the compiler and assembler, especially CL65, from a regular Windows command prompt, but you won't be able to use a Makefile that expects a Unix environment, which is why I asked if you were using one.