Here's what I make of the situation. First, he's not "running away", he's "running to greet/play/socialize" and only when you are not physically present. That's not a bad thing, other than he is getting loose in the process and could be severely hurt or cause an accident (the consequences are bad, not his actions).

Fact is that fence is just NOT high enough to hold him, at least unsupervised, as is evidenced from your picture alone (he can easily get his feet on it and see over it). I feel for you, I have a 6ft high solid wood privacy fence and I still can't leave my dog unattended for long periods. She can jump it, though she hasn't figured that fact out yet.

Some options:

a) never leave him out unattended. It's a slight inconvenience/lifestyle change, but in most cases it can be done (consider crating instead of leaving out during the day if having him loose in the house while you are gone is an issue).

b) fortify the fence (this unfortunately is limited by your local regulations). Build the fence higher so that he can't get his feet on top of it or see over it. Plant things that will become physical (or at least perceived physical) obstructions (sounds like this might not be an option). Or get an electric fence, but spend the time to teach him that boundary, etc (him getting shocked as he falls off the porch again isn't going to do much, so you have to teach him why he's getting shocked so he never tries to jump off again)

They do make temporary, portable dog enclosure panels that you could use to make your fence higher temporarily at times when you do have to leave him out alone, or while you are trying to teach him. I'm not sure how well those will go over in your area however. Or, get a smaller set with a roof and allow him a small area of your patio permanently, but not allow him run of the whole thing when he's not supervised.