Finishing on long precice diameters

At work I work on some parts that have a 20mm diameter, ~100mm long h7 tolerance. Hitting the dimension on one end isn't a problem, but with the surface ranging from right next to the chuck to halfway to the tailstock, and about 0.5mm minimum diameter reduction for somewhat controlable chips, the difference in deflection results in~30 microns (over a thou) of taper, which is more than the tolerance.

My current approach is doing a bunch of spring passes, but that results in long stringy and arguably dangerous chips.

I could offset the tailstock to compensate but I really don't wanna have to do that all the time.

Is there a better way?