Here is my extension of the belisarius' first solution for the case of arbitrary number of elements in the sequence with matching $x$ coordinate (the sequence is still allowed to be only one):
{{4, 5}, {1, 2}, {1, 8}, {1, 7}, {3, 5}} /. {a : ___, b : Longest@Repeated[{x_, _}, {2, Infinity}], c : ___} :> {a, Sequence @@ Transpose[PadLeft[{Append[ Flatten[MovingMap[Most[Subdivide[#[[1]], #[[2]], 3]] &, {b}[[;; , 2]], 1]], {b}[[-1, 2]]]}, {2, Automatic}, x]], c}
{{4, 5}, {1, 2}, {1, 4}, {1, 6}, {1, 8}, {1, 23/3}, {1, 22/3}, {1, 7}, {3, 5}}
If the number of sequences with matching $x$ coordinate is arbitrary, there probably is no way to avoid Split:
l = {{4, 5}, {1, 2}, {1, 8}, {1, 7}, {3, 5}, {3, 7}, {3, 4}}; subd[s : {{_, _}}] := s; subd[s : {{x_, _} ..}] := Transpose[PadLeft[{Append[ Flatten[BlockMap[Most[Subdivide[#[[1]], #[[2]], 3]] &, s[[;; , 2]], 2, 1]], s[[-1, 2]]]}, {2, Automatic}, x]]; Flatten[subd /@ SplitBy[l, First], 1]
{{4, 5}, {1, 2}, {1, 4}, {1, 6}, {1, 8}, {1, 23/3}, {1, 22/3}, {1, 7}, {3, 5}, {3, 17/3}, {3, 19/3}, {3, 7}, {3, 6}, {3, 5}, {3, 4}}