Use waypoints instead of realtime position updates. A path is a collection of waypoints. Only when the path changes it is synchronized to clients. Instead of 20hz updates you now get a really low update frequency because the path stays the same for many entities over many ticks.
public struct PathingWaypoint : IBufferElementData
{
[GhostField]
public float3 Position;
[GhostField]
public int ArrivalTick;
}
Position can now be inferred by using spline interpolation logic.