What are you doing here ? You take the distance between a point in object space and camera space, what is your object space for point sprites ? When you have a transformed point in camera space, the camera position is (0,0,0).
gl_PointSize = scr_h / distance(-(gl_ModelViewMatrix * gl_Vertex), gl_Vertex);
True, I modified my code based on your suggestion for radial depth but the problem seems to be coming from somewhere outside the shader. Is there a way I can make sure that gl_PointSize is only affected by the shader and nothing else?