Why doesn't it stay in the middle of the screen while walking?
This is usually determined by Body Speed. By default this is 0% - no movement. At 100% this means walking without foot sliding.
Also I can't use the face behavior this way, the head will stay in the middle of the screen while the body walks to the side.
See the Walkbot example puppet from the Start workspace - the Walk behavior is added at the top level puppet, and Face works. Try emulating that setup.
If problems persist, feel free to share your .puppet file (File > Export > Puppet) via a shared link on Google Drive, Dropbox, or Creative Cloud to take a closer look.
Re-positioning the origin point of the main puppet fixed the issue. Another thing I can't figure out: My character looks best when I staple his feet to the ground and when the body parts return to rest position in 1 second. But if I try to move his feet, there's always that point that still wants to stick to the ground. Do you have any tricks for that?
Fixed handles and walking don't get along too great - you'll get some fighting between the walk trying to move and the fixed part trying to stay in place. If you really want a true stationary character for resting, we recommend the 3-view structure that the Maddie example character has (Character Animator Examples). Then for your "frontal" view you can remove the walk rigging and just have that part pinned down.