There's a lot here, and in spite of his age, I think the underlying cause is training (or lack of effective, specific training) and expectations, not hormones.
First, Rule One in training is never give a command you cannot enforce. So, knowing that he's a banana at the dog park means that he will also not respond, therefore do not call him back, at least with the "Come" command. I use his name, which is a more reliable attention getter. Otherwise, you inadvertently teach him that it doesn't count in the park.
Second, ditch the long lead. You do not get enough control to manage him and properly correct him when he misbehaves. I always chuckle at the park when I see (usually overanxious) owners with their dogs on literally 100 feet of rope. That, along with those clickers, but that's another post...
So, what you want to do is continue working with him on a shorter lead (6 feet is really fine), in exclusive training sessions where that's all you are doing together, for 1/2 hr a day..shorter, more consistently successful sessions are better than longer one's with frustration....and start to use the word "Come" not only to get his attention and have him return, but also as he is doing it, "Good, boy, good come!". That way, you doubble reinforce the come command, first by having him attend and return, and then as he actually is engaging in the return. At the park, just go for now for fun w/o the expectation of obedience, that will take some time.
As for his temperament, he sounds like a naturally more independent dog, which isn't such a bad thing as they are more self sufficient. Keep that in mind in maintaining consistency and boundaries with him with training. His humping is not sexual, but dominance, which makes sense in the rough and tumble nature of group day care. The problem there is that it's basically law of the jungle, which is antithetical to your training goals, so it might be a good idea to make sure you have a training session after each day there to re establish the more "Civilized"ways you expect him to behave.