Perhaps if I add one more check at the end, right before the pseudovertex is added..
At this point we know:
1) The pseudovertex is "inside" a face in 2D
2) The pseudovertex is either visible, or stuck in the microscopic gap between two edges like above.
3) We know the 2D and 3D coordinates it occurs at
4) We know which edge we're going to be adding it to
I could cycle a tiny bit forward and a tiny bit backward along the edge for each potential pseudovertex.
If the pseudovertex is not hidden behind anything when cycled forward along the edge by 1%, OR it's not hidden when cycled backward along the edge by 1%, then it should be visible.
If it's hidden in both of these circumstances, we've captured an erroneous pseudovertex that should not be rendered!
This sidesteps the problem of vertices erroneously being rendered in between faces.