R15 animation resetting position on walk

One of the playable characters in my game is an R15 character with a resized hand and transparent head and arms, in contrast to the default and rest being R6. The hand is only needed for some ability animations and is meant to not be visible otherwise, so I have it hidden in the torso.
However, it seems to snap back to the normal position and move back to the intended position when starting to walk.
I copied Animate script from a R15 character into a server script, removed the emote code which referenced LocalPlayer, and set custom animation ids to idle and walk, which is put into the character upon morphing. I also changed the weight of walk to 1 because the animation was playing extremely fast for some reason but I still have this issue when at 10 weight. Both of the animations have the keyframe for the hand position at the start and end, and are looped. I even added some constant easing keyframes at the start of both and it made no difference.

Video of the issue