Animation control layers

tell me how to properly arrange animation control.
I have a regular human character, different weapons, which entail different hand positions with them, also one-handed and two-handed grip, as a result, I made such an animator
layers
0 - movement animations
1,2 - grip of the hands (depending on the size of the weapon handle)
3,4 - left and right hands (taken out to separate layers since the weights can decrease while the back of the hands should have a weight of 1)
5,6 - two-handed grip (mask for both hands) (the difference is which hand the weapon is attached to) (turns off layers 3 and 4)
6 - layer for punch animations

in general, the movements turn out well, but with punches, the transitions cause an unnatural look.

so the question is how to organize it more correctly, as for me, it seems to me that there are a lot of layers and it should be built more competently …