We've had a minor breakthrough here - by a) changing his food, and b) using a 60 second time out.
I mean it's only been a couple of days since we've noticed a difference, but it's definitely a marked difference!
Food wise he was on AVA Small Puppy, which by all accounts is an excellent quality food. But he had rather squishy, very frequent poos which were a bit long and pencil thin - and he had terrible, eye watering wind.
So I switched him to Burns Puppy - it doesn't score as highly on paper, but I had my old dog on it to avoid her gaining weight, a colleague moved her lab puppy over to it and said she was calmer, so I ordered some and started adding it in to his 3 meals a day a few days ago (not quite 100% converted yet).
There has been less smelly wind today, he's done fewer poos and they are smaller and firmer already.
As for the mad bitey zoomies lasting HOURS where you need an oven glove and a stiff drink to interrupt him, these seem very much reduced. The time out has been very effective for obnoxious barking, and psycho zoomies where he tries to tear chunks out of us. When he loses control and the barking is too much, he simply gets placed behind a door in another room (safely, obvs). He doesn't cry or bark, he seems to sit and contemplate. He is invited back in after a minute or so - and he doesn't come back all sad and submissive or worried, it's just like pressing a re-set button! He's just pleased to see us, and calm.
In fact it was a time out that called a halt to 10 minutes of shoe stealing, barking, snarling, and racing around the garden like a maniac this evening - instead of letting him burn himself out by staying out of his way for 2 hours, I managed to grab him and shut him in the kitchen for 60 seconds.
Boom, re-set button! He ambled happily back in, asked politely to come and sit with me and is now asleep.
Let's see if it lasts...!