Something to bear in mind, the execution order of MonoBehaviours on different GameObjects is not guaranteed. This is often the cause of weird issues. E.g., if one FSM clamps a value and another FSM uses that value in the same frame, it might access it before it's clamped.
Not sure if that's what's going on in your case, but it might be something worth looking into...
If you need to guarantee the order of execution you can send an event from the first FSM to trigger the second. Or put the clamp action in the same FSM where you can guarantee the order.