You might consider another approach...
How about painting a white strip or patch on the engine flywheel pully, or some other pully driven by the engine. You could then use a LED emitter/detector pair to see the reflected light coming off the pully as the white patch rotates through LED emitter/detector field of view. If your "white patch" is right on the engine flywheel pully, then you have a direct match of 1 engine revolution per pulse on the LED detector. If you locate your white patch on a different pully somehwere else, then you simply have a ratio of the engine pully to the "detector" pully to deal with which is pretty simple.
You could even go so far as to put your "white patch" on your wide, flat serpentine belt (if you have one). You'll just have to figure out the how many revolutions of the engine equate to a revolution of the serpentine belt,
This is a rather low-tech method, but it could be simply implemented and it does work! I did something similar 30 years ago when I was in college. Our project was a digital (all in discrete 7400 logic chips and timers -- no microcontroller) bicycle speedometer/odometer when we counted pulses coming from a reflector in the spokes of the bicycle wheel using an infrared LED emitter/detector pair.
Oh the memories...
Good luck, and it sounds like a fun project.