or try another trainer, a can of pennies is usually not working in my experience.
it just increases a dog's frustration
I second that. Or at least work with the trainer to not use something like the can of pennies idea. You'll have a few problems I can see right off the bat, the first being that you said your pup loves noise. The point of the can is that the noise will stop many dogs right in their tracks (fear or startle). If your dog likes the noise, the can isn't go to help you. This leads to the second problem. Using the can, or really using anything that will increase his reactiveness (noise, physical forms of correction, spray bottles or ice water from a passing car, etc) will in all likelihood make your pup more reactive. He'll learn to anticipate the noise and start to react to that and whatever it was you were trying to prevent in the first place.
You said your pup was on his best behavior while working with the trainer, and because you were in unfamiliar territory. Can you change the location of your walks? Or try to vary the route as much as possible? This helped with my Olive, along with some other techniques I've put in other posts. Since we started back out on the sidewalks, which makes up maybe 20% or less of total walk time (any more and out comes her crazies), we do a lot of heelwork and misc "stuff" on the sidewalk. I keep throwing stuff at her so there is very little chance for her to take her eyes off me. If we're not heeling, we're sit/down/drop/stay/etc. I know it's time to quit when she starts to veer away or I can't get her eyes back on me. Try taking a basic obedience class and practicing on the sidewalk in short bursts to keep your pup's attention on you.
Seven months is still a puppy. It's tough to hear but patience is going to be your best ally.
It is SOOOOOOOOO worth it in the end!