If you want to keep him, management is key.
Sometimes dogs just don't like other dogs, and that is an easy fix, again management.
When it's a 'people' issue, you've got to be much more on top of things, know what he's capable of, and again management is key.
Maybe someone in your area can suggest a behaviorist to help you one on one, ideas and suggestions.
Your lucky your neighbor was so forgiving, (and I'm not being sarcastic so I apologize if it sounds like I am)...if this were a stranger, they could sue the pants off you
and unfortunately the dog may pay with his life
I wouldn't try to rehome a dog like this, because you may be liable for any future incidents
So manage him, fence your yard, don't let accidents like this happen..
And I think, he may have thought something was going on with the wrench incident, because he really could have done more damage to the guy than he did if he really wanted to..(not an excuse, just an observation)