Just a note about using Integrate and why it helps (I failed to explain some boring details in the other post :rolleyes:). The M tolerance, Locate Features Along Route tool and Route Event Layer may create small imperfections between the point and line that are nearly invisible. Additionally, if no pseudonode exists at the interpolated point event location there is almost always a discrepancy between the coordinates of the point established using the feature class resolution and tolerance settings and the projected line passing by that location which has not been adjusted by those factors.
I believe the Split Line at Point tool will always favor splitting the line at a vertice within the search tolerance rather than at the actual location if there is any discrepancy. Probably the tool finds the closest vertex reading along the line geometry first and if the vertex is in the search tolerance it does not bother to locate the point more precisely and just uses that pseudonode. (Your second picture clearly shows that this is occurring at the lowest preexisting pseudonode where the line bends slightly). It is also possible that it may first cluster points that fall in the search radius rather than use each point individually and that would result in a slightly random phantom point location if that occurred.
Integrate moves the features slightly so that they lie directly on top of each other and also inserts a pseudonode into the line at the integrated point location. This allows you to use a 0 search tolerance since a line pseudonode will always be found that matches the point location exactly at the integrated position, and this should eliminate the issue.