He sounds like a wriggler :)
I used baby slippers - because ours would lose their socks too. I looked for them online but can't find them. Think I just got them at Walmart. They were soft, made out corduroy on the outside but soft flannel on inside, and just this elastic (but not tight) around the ankle to keep them on. They had little nubs on the soles so when they started standing up and walking they had some traction. Easily washed. They were great.
Not sure if that would solve the problem of pulling legs up into crotch part. I had one that would wriggle and legs would come out through snaps in onesies.
If I can find the slippers, I'll add the link. I just liked how they were soft enough that they could wear them all the time.
ETA: Ok this looks like them. I think I just got at Walmart though.
http://www.shopslipper.com/padders-infant-and-toddler-bas...
Here it's cold so they were a necessity.Thinking back, I used socks from the gap. They were really long so would go up their legs (keep legs warm) and snug so wouldn't come off.