You look pretty solid to me - But, then I’m not a mechanic’s coach.
However, I can suggest a different approach that may be of some help. Whenever I noticed location problems, more often than not, it was because of concentration. Now I’m not saying that this pitcher above is prone to that - not being there to witness his performance game after game and his practice sessions is a huge void for me.
But, perhaps this will help some:
Below you’ll see a catcher in abstract form. In picture (1), many amateurs visualize their backstop in this manner with no real definition with respect to locations. In that way, an amateur who isn’t coached to TARTGET his backstop as locations to hit, is a pitcher without a game plan - period. Even when his backstop gives a sign - down in/down out, etc., a pitcher is still without the mental discipline of seeing his backstop as a location target … nothing more.
So, in the picture below, have your son look at his backstop while in the bullpen as a flush target to pitch at. Then pick a location… say #1 and pound that location until he can put the ball in that location about 80%. If he can’t do it, then he stops what he’s doing, and move eight (8) paces closer. Don’t go game speed here. Go about half game speed and focus on hitting that location. Now don’t be surgical about this, like in the picture on the far right. As he locates his pitches with an 80% rate, move back two (2) paces and repeat. Continue to locate his ball in that same location, repeatedly until he’s back to his full distance. Again, keep it below game speed.
As your son continues to locate that ball in area #1, he should get a sense of timing and feel for what he’s doing right. Keep a notebook of this progressive movement and why. Don’t skip this part - never. Why? Every professional has a memory of what to - and what not to, while pitching. This is from the windup as will as the set motion.
By the way, don’t move from that location #1 until his accuracy is at least 80%, day or night, like it’s his second skin.