The Dyna S uses a fixed dwell angle somewhere over 300 degrees (crank degrees). So it only lets the coil rest for a short period. That is somewhere under 60 degrees. That means as the RPMs increase, the coil's rest-time decreases. Some tachs require a certain amount of rest time in order to register a signal pulse. If that rest time is too short, it won't register a signal pulse.
After the coil fires a spark, there is a very short period of time where the coil "rings". That is a brief oscillation in the coil signal which dissipates the last remnants of the coil energy after a spark happens. Sometimes, if the rest-time is too short, the entire rest time is taken up with this "ring" oscillation. The tach may not interpret that oscillation as a single pulse, but will see multiple pulses.
So it can be noise, as there is more electrical noise at higher RPMs, or it can be the rest-time of the coil signal is too short where the tach doesn't acknowledge enough pulses, or it can be the "ring" which the tach acknowledges as too many pulses. Or it can be any combination of the problems which can make for a very erratic tach operation.
You can filter the noise and the "ring" using a low-pass filter. That only requires a cap and resistor, and maybe a diode. If the problem is the rest-time is too short, then you need an edge detector. That is a circuit that gives a short pulse when it sees (in this case) a downward going voltage pulse, but will not wait for the upward-going pulse.
I assume this is a 4-cylinder bike. Is the tach signal only going from one coil?
Generally speaking you only need to use one resistor element... resistor plug, OR resistor cap, OR resistor wire. Using more than one will reduce spark energy considerably. (Using one also reduces spark energy a bit, but is usually not noticeable in normal street use.) Using a second resistance element will dampen the coil "ring" a bit and will reduce noise, so maybe give it a try, at least as a troubleshooting tool.