It looks like you are using a second IK node (FABRIK) after the IK included in the project. I would instead just move the bone VB hand_l (which is the effector target for IK already included) to the grip location/rotation before the IK already included is executed (in other words, before the TwoBoneIK nodes in the anim graph):
In this pic I’m typing the location and rotation values manually, but you could use a var (like you’re using) to input that. You can experiment with changing the settings on the right - ‘AddToExisting’, ‘BoneSpace’ - but if you’re using a var, like your transform that comes from a socket, you have to make sure the space used is compatible, as well as if you’re adding to the existing bone transform or replacing it.
Also, if your’e using bone space, you probably don’t need to grab the socket’s transform every frame, since it’s position in relation to the hand probably doesn’t change over time when you’re holding the gun.
Another important thing is that you’ll probably have to turn off that node in my pic when you play a reload anim, for example, because, since the node moves the hand away form its original position in the original animation, it won’t grab the mag at the right place and will look wrong. Just make sure you set the ‘Alpha’ of this node to 0 when playing the reload. It’s nice to also use the built-in interp option inside this node. for smooth transitions between on and off: