One can use the periodicity over $\theta$ and add one periodic copy of the data. In this case FindCurvePath
works much better. I also add an interpolation of the result
arrayData = Flatten[Thread@{#, Join[{##2}, {##2} + 2 π]} & @@@ originalData, 1];
curvesPosition = FindCurvePath@arrayData;
{t, θ} = Interpolation@Transpose@{Range[0., 1, 1/(Length@# - 1)], #} & /@
Transpose@arrayData[[#]] & /@ curvesPosition // Transpose;
ParametricPlot[Evaluate@Table[{t[[i]][ξ], θ[[i]][ξ]}, {i, Length@t}], {ξ, 0, 1},
AspectRatio -> 1/GoldenRatio, PlotRange -> {{0, 1}, {0, 4 π}}]
Let's select only full curves and plot them by $\mod 2\pi$$\bmod 2\pi$. Now we explitlyexplicitly see that there are only two branches:
ParametricPlot[{{t[[1]][ξ], Mod[θ[[1]][ξ], 2 π]},
{t[[2]][ξ], Mod[θ[[2]][ξ], 2 π]}}, {ξ, 0, 1},
AspectRatio -> 1/GoldenRatio, PlotRange -> {{0, 1}, {0, 2 π}}]