If you install the spring coupler and bearing mount correctly, the motor shaft will prevent the lifting you’re thinking of. First there must be firm contact between the motor shaft and lead screw; pull in a little tension as you tighten the grub screws to ensure a firm seat. This way the spring still allows for misalignment, but now it requires a lot of force to pull the shaft and lead screw apart (more than milling).
Next, make sure vertical slop in the motor bearings is removed. After the motor is installed, pull the thrust bearing up until the motor shaft hits it’s vertical stop. You don’t want to leave room for the motor shaft to lift.
Using those methods, I reduced z error on my primo to just backlash on the z-nut. That’s not usually a problem with a heavy enough router/gantry. Downcut bits also help prevent this lifting, but I suppose that’s no help for you unless someone makes downcut v-bits. V-bits also tend to also lift more in general. Reducing feedrate will reduce that lifting force some. Adding weight to the router will also help not only increase the force required to lift, it will also put more inertia behind the bit, which reduces vibrations and chatter in general.
I think the reason you are seeing this is similar to a drill bit walking around as you start an unpunched hole on steel. Most cam methods involve a “pencil profile”, which results in a 1/2 conventional 1/2 climb cut. Mix in randomly oriented grains of varying density, and you’ve got a recipe for flex ugliness. The overcuts due to the conventional cutting can’t be fixed with finish passes. If your cam can do so, try multiple passes coming down into the groove from one side, to reduce the amount of bit engaged in conventional cutting.