OK. I took a look and re-rigged it the way I personally would.
The Walk behavior was applied directly to the body. This means the Walk behavior will only look for handles found in that puppet, or its subgroups. This is why moving the head into the body worked. It probably doesn't matter, but I deleted the Walk behavior from the body and added it to the main puppet. I also tagged the head handle with the neck tag and deleted your neck tag. I'm not sure that made any difference, but I found it worked well for another puppet.
Like you already found out, having the body warp independent disconnects the face from the body, so I unchecked the crown for the body.
Finally, I was finding a single point getting stuck behind as I was walking. I deleted the Left Eye group and the problem went away. When I looked into the Left Eye group, I saw that the pupil for the Left Eye wasn't Warp Independent like it was for the right eye. This meant that the pupil being controlled from the mouse and/or camera was controlling the entire puppet. I made that pupil Warp Independent and that fixed the problem. I also deleted a stray "Left Eyeball" handle on the Left Eye. I don't think it was doing anything negative, but it also wasn't doing anything positive.
By the way, AWESOME puppet!! One of my favorites and it works GREAT with the walk behavior.
Here's the file:
Adobe Creative Cloud
Dan R.
CH QA