Hi,
The L.Circle emits `mouseout` events when the mouse goes over the popup.
Popups on vector layers open at the current mouse position, so as soon as the mouse goes 1 pixel up, the mouseout event is fired and closes the popup (if it is setup to close on your L.Circle mouseout).
The same issue affects L.CircleMarker.
To overcome this, you can offset the opening the position of the popup, or open it at specified LatLng position:
http://jsfiddle.net/uuLszmmk/11/This also means that your user will never be able to put his/her mouse over the popup, because it will close as soon as it reaches it (or if the offset is too big and creates a gap between the layer and the popup).
If you need to overcome this, you will have to come up with a more sophisticated scheme rather than simply closing the popup on mouseout.
If this is not a problem for you, you could consider using this plugin instead of having to build the opening/closing circuitry yourself:
https://github.com/Leaflet/Leaflet.labelHope this helps.