Also, please don't get frustrated while training your dog. Dogs can sense frustration in their owners. When they sense frustration dogs try to calm themselves down and calm you down. Dogs try to calm you down by looking away from you, walking away from you or just freeze up. If they get even more nervous of you, they try to pull on the leash and run away from you. So it is VERY important not to lose patience when leash training your dog. Try reminding yourself that your puppy is just a little baby and is trying hard to please you. But it is difficult for him to understand the rules of your world and he is trying his best.
Please do NOT muzzle your dog. You can train him not to eat things in a very easy way:
Step 1: Start this at home or a very quiet place. Jiggle a bunch of keys. When your dog looks up at you, praise him and treat him. Do this 3 to 5 times to start with. Do it about 2 or 3 times a day. Keep repeating for about a week. He will then learn that jiggling keys means he will get a treat.
Step 2: Try the same step as above, but in a place with little more distractions (example: parking lots at night, or parks at night, when there are not many people). Repeat for a week. He will learn to concentrate on your sound.
Step 3: Same step as above, but during the day in a quiet street. Do not repeat for more than 5 minutes at a time. Slowly increase the number of times you do this. Do for a week.
Step 4: Start trying on your walk, on the more quiet roads. If he starts smelling something, jiggle your keys and treat him. Slowly start doing this on busy streets as well.
Once he is responding well to the key sound, you can start reducing the treats. But do not completely cut off treats, as he has to know that you will eventually treat him. Also use very tasty treats like pieces of paneer, so that he is highly motivated to look up.
Despite this, sometimes he might still get distracted. When this happens, just calmly walk up to him, and gently turn his head towards you and guide him to walk away from what is distracting him. But please do not muzzle your dog. Muzzles can get painful, cause eye problems and cause behavioural problems in dogs. It is not humane. There are more pleasant ways to fix this issue so that you and your puppy share a great relationship.