
Thisa isn't any help but eill explain one of the things that is happeneng. A comfortable pace for a dog is faster than our confortable walking pace. this is why when they are little they don't pull as they can just keep up with us, but onve they get to about 4 months they are big enough to be more comfortable moving faster. Also of course they begin to anticipate interesting things to see and do on their walks.
So now pup has to learn to walk slower, and of course it doesn't concentrate for long so forgets and gets ahead again, it isn't actually being naughty.
I am a rather brisk walker and find it very hard to remeber to keep at a slower pace for a disabled friend, or anyone who walks more slowly, it takes concious effort.
So in order to keep him at heal he needs to understand what is wanted, and get lots of praise for it.
There are many methods, such as stopping until pup is in correct position again, to turning across pups path at right angles al the time so that it stays back to avoid being troden on, to doing left about turns until the pups bored with surging ahead (the one that I have used when it is excited pulllling to get to a certain place).