I might be off base here, but just a thought. Would it be possible to measure the frequency of the tap, compare to rpm, and use that to narrow down the potential sources?
I think this is a great idea. Valve train moves at half the speed of the crank. Anything exhaust related would also be at half the speed of the crank. Flywheel obviously spins at crank speed.
But how to measure the frequency?
Seems to me you could record the sound produced by the engine at a specific RPM, upload it to a PC and look at it with some kind of sound editing software. You should be able to see the ticks on the wave and compare the spacing with the timescale to get the ticks per minute compared to the revolutions per minute (RPM) that the file was recorded at.