Horizontal stripes shader not tiling over geometry as expected

I’m trying to make a striped stocking shader in UE5’s material node editor and am encountering strange rendering behavior when it is applied to the target geometry. The original shader was done in Blender and looks like this:

Unfortunately it seems Blender doesn’t have a nice HLSL/GLSL export (and UE5 doesn’t have a corresponding import AFAIK), so the procedural shader can’t be directly transferred over. Texture baking is the answer to that problem, but out of curiosity I wanted to try recreating the same effect in UE5’s material node editor. I experimented with UE5’s ColorRamp node, but found it much easier just to make a texture of one set of stripes and then allow that to tile across the material. The results look correct in the preview using a cylinder primitive (which should be pretty close to the leg geometry the materials will actually be applied to):

but on the actual model’s legs the stripes are occasionally weirdly out of phase at different longitudes:

This effect actually used to be worse (uneven stripes on one leg and the other leg entirely one stripe color) before I UV unwrapped the model in Blender; I figured since there was no texture image to worry about from the Blender export I wouldn’t need a UV unwrap, but in preparation for texture baking I went ahead with it anyway and the next time I tried applying the UE5 stripes material to the same Blender-defined material region I got the above result.

What could cause the material to render like this? Considering the UV unwrap appeared to help, I’m guessing the problem is with the model and Blender export pipeline rather than something I’m misunderstanding about texture tiling across a material region, but I don’t know what it could be.

The UV unwrap in Blender looks like this and has a couple odd spots where it looks like geometry was missed, but nothing that obviously suggests the above effect: