Image Texture is fine in Render View but renders distorted
It definitely looks like z-fighting. Likely caused by a copy of the object on top of the one you want to render. You cannot have two surfaces that overlap and use the exact same point in space, the 3D engine will not know how to render that and display one surface or the other randomly.
Check if you don't have a copy of the object. Delete it or disable it for render.
See:
Avoid rendering hidden objects (blender 2.8)
If the mesh is duplicated as part of the same object, then enter edit mode and do Mesh &gt; merge by distance to get rid of duplicated vertices