this is probably due to your animation having the same priority as roblox does, either increase your animations priority or make a custom animate script to not have a tool hold animation
Personally, I believe weapons should be welded to the arm that holds the weapon, instead of HumanoidRootPart (it looks like you’ve welded it to the HumanoidRootPart).
Doing so prevents issues like these, because weapons will always follow the arm that’s holding it.
I tested this out and it doesn’t fix anything, if you attach it to an arm, the gun goes inside that arm and if it’s attached to the Torso, the gun isn’t animated.