If you dont want to replace your socket 1st I would try modifying your heatsink.
All you need to do is drill and tap a hole right above the left ear of your retaining clip and mount a screw so it holds it without the clip tilting when its also clamped on that larger clip on the right side. I have made this modification and it holds the heatsink quite flat.
My heatsink has dual springs but it works the same way as a single spring would by not allowing the 3 holed bracket to tilt and applying even pressure. The one pictured has a small T-nut I machined that the screw is fastened into but would also work on a single spring type if you just tap right into the alum at the proper height. The motherboard I did this too is a Tyan S2080 Tomcat that I got dirt cheap because the ear on the socket was broken... its running a 1.4 gig Tual P3 nice and cool. I checked to make sure it was sitting flat by checking it had even thickness paste distribution... I wanted to use some pressure paper to check how well its seated but that stuff is too damn expensive.
This fix works best if the broken ear is on the side of the socket that you fasten the retaining clip down to 1st as if its the other side it can be more problematic as you would have to go over the screw as you are trying to fasten it down or put the screw in after you try to clip it while trying to push down the corner of the clip.
(edit) in my pic you cant see it but the little t-nut I made is putting pressure on the spring and holding it and the clip in the proper orientation but if you drilled and tapped or just drilled and used a self tapping screw you would need the dia of the head of the screw to hold the edge of the clip at the proper orientation. Proper measurement in where to place the screw hole would be more important then my setup as I can adjust mine up and down in the slot clearance that the spring uses.