Hmm, to me (as a native speaker) 'Pojken har inte strumpor på sig' sounds better. Still, the 'inte' follows right after the verb.
Maybe, maybe there's a slight difference in meaning, where 'Han har inte strumpor på sig' implies that his feet are naked (with or without shoes, though), and 'Han har inte på sig strumpor' implies that he was expected to wear socks but put gloves or something else in his feet instead.
Better a late answer than none, I guess: you can't add his here because it says just sockar.
his socks in this case would be either sina sockar (= he wears his own socks), hans sockar (= he wears the socks of some other male) or sockarna (in Swedish, the definite form sometimes implies that the thing is owned by the person you'd be most likely to expect, so it'd be his own socks in this case too).
sig is not a possessive word, but ha på sig is a reflexive verb which changes with person:
jag har på mig I wear
du har på dig you wear
han/hon/hen/den/det har på sig he/she/it wears
vi har på oss we wear
ni har på er you (plural) wear
de har på sig they wear