LocomotionSystem for preventing punching arm to go through head?

I am developing a boxing game, and i would like to implement physics, but after days of fiddling with animations and physics in Unity I have come to the conclusion that I can not make it work correctly. What I want is the following:

  1. Animate some punches on a character, preferably in Blender, but Maya is okay.
  2. Import the character with animations into Unity.
  3. Play a ‘punch’ animation where the hand hits the face. The face is pushed back, and the hand is more or less stopped depending on the mass of the head etc.

The imported animation has the hand completely following through the whole punch, stretching the arm, but I hope that animating with IK’s and Unity’s LocomotionSystem can make the arm stop at the opponents face.

Does anybody know if this can be done, and if so, can I implement this in a couple of weeks? (I have some months experience with both Unity and Maya/Blender).

Or is there a better/easier way to do this?

Thanks in advance!

It seems it would better to use an Asset I found in the Asset Store for free: [Inverse Kinematics | Animation Tools | Unity Asset Store][1]

[1]: Inverse Kinematics by Dogzer.

I still have issues though, but I will make another question for that.