I get similar behavior Pausing and unpausing the script through code:
If I pause the behavior inside the event, then resume it later once the animation finishes (with the same animation event), the tree resumes inside the Send Event, where it calls the Update function a second time, and it gets stuck in a loop.
// function called by Send Event
private void StartSkillAnimation(object skillIndex)
{
Debug.Log("starting skill");
_behaviorTree.DisableBehavior(true);
_animator.SetTrigger($"Attack_{skillIndex}");
}
// function that resumes the behavior
private void SkillFinished()
{
Debug.Log("Skill finished");
_behaviorTree.EnableBehavior();
}