Well the code I pasted would definitely hide/show the endpoints based on hover, but of course there's a possibility that as soon as you hover over one of the endpoints it gets hidden, since a mouseout has been posted on that div, right? So it would actually have to be a little bit more clever than just what I put there. You might want to check that the target of the event is not an endpoint, for example:
function(e) { if (!$(e.target).hasClass("_jsPlumb_endpoint")) { ... hide/show } }
and then you have the problem of what will happen once you start dragging a connection. i would suggest to you that subscribe to the connectionDrag event, and set a flag whenever a connection is being dragged, which you would also check in your hover code. But for some reason I didn't hook up that event for new connections, only existing ones (I have fixed this in 1.4.0, but I'm not yet sure when 1.4.0 will come out).
As for making target endpoints visible, yeah I'm not sure how you will handle that. I'm not sure if it's a great user experience to have to drag the connection over the target div to see what endpoints are available on there. I kind of think it would be more intuitive if available endpoints were made visible as soon as i started dragging a connection.
but of course it's your UI ;)