Llegamos al fondo de esto al final.
Fue nuestro uso de columnas nvarchar(max) lo que impidió que la replicación usara lotes. Lo que antes tomaba 3 horas ahora toma 50 segundos simplemente cambiando el tipo de datos.
Aquí está la lección aprendida:"nvarchar(max) es un asesino de replicación"
Gracias