It looks like it is not possible to set a per channel response for each physics body, like you can with static mesh components. So that is the crux of the problem if I am understanding correctly.
Perhaps it is possible to expose that through c++, but I can suggest at least a workaround based on something I did before, which is basically to make your own custom collision bodies and make them child to bones on the mesh (essentially doing the same thing as physics body, but you only use it for collision queries).
So the simple setup is add a static mesh component as child to the main Mesh, set it to follow some bone, and then you can set its collision to Custom and then flag each channel however you need. So you could make the feet behave one way, and the head another way.
I have no idea if that’s the best solution but it should work. I used similar thing in a hunting game prototype to test for vital organ hits.
*collision presets that can be set per static mesh component:
anything that is child of the Mesh in a character can have a parent socket (this way it will follow animations correctly):