You need to teach him the command "Watch me" while you are in the backyard. Basically, while you are walking, you say "watch me". When there are no distractions, your dog will probably look up at you just by hearing your voice. Give him the bait and praise him like crazy! Once he starts looking immediately after the command, hold his attention for a few seconds by delaying when giving him the treat. Eventually, your dog will be able to maintain visual contact for quite a length of time.
Another tactic you could use is changing directions abruptly once he becomes distracted. This doesn't work as well as the above method but it does get the dogs attention when distracted.
When my dog was younger, we used the combination of the two methods. I would say "watch me" and if he didn't comply, I would change directions (usually a 180) and give him a bit of a correction. He very quickly realized that when I said that, he HAD to watch me for the simple fact that it could mean that I am changing directions quickly.
If you can master this command in the yard, it will help you a lot out of the yard. Remember not to overwhelm him with distractions. Going from a completely quiet, familiar yard, to a loud, unfamiliar park is too much at once. But walking down a quieter street would be a happy medium.
Remember that he is still a puppy and it is normal for him to be a bit flighty and distracted. Just work really hard and give him lots of praise and hopefully you can settle him down.