he bends his head slightly but keeps going straight forward with head turned sideways,
This is not a neck reining issue. It is a basic guiding issue.
When you turn a horse's head to the left enough that you can see the corner of his left eye, HE MUST follow his nose and go to the left. Do not worry about 'asking' him to turn to the left (which is all you are doing when you lay a rein on a horse's neck) when you cannot successfully direct rein him and have him obediently follow his nose and go to the left. He is not ready to teach neck reining when he cannot obediently follow his nose when he is 'lightly' asked with a direct rein.
He is pushing his outside shoulder out and moving his weight into his outside shoulder. This is happening because you have pulled harder on the direct rein instead of making him follow his nose with a very slight bend in his neck. He is 'rubber necking'. This ALWAYS comes from pulling too much.
If you can see the corner of his eye STOP PULLING!!!! The inside rein should be slack at that point unless he tries to straighten out and take his head back to straight in front of him.
I would suggest you take a short crop and tap him on the outside shoulder until he follows his nose. Only tap until he stops putting his weight into his outside shoulder. But, whatever you do, stop pulling on the inside rein.
When I have a horse that is out of control, running sideways toward a 4-lane highway and refusing to follow its nose, I will pull it around hard the opposite direction and try again to get it to follow its nose the direction it refuses to turn. I used to get in many spoiled horses that refused to follow their noses one direction. One side was stiff and the other side they were over-bending. It is a 2-part fix:
1) loosen up and limber up the stiff side.
2) Teach the horse to NOT over-bend to their limber side.
In other words, get them CENTERED! Get them riding between your reins and between your legs.
Such a horse is not ready to work on neck reining until the underlying problems are fixed completely.