The AI seems hardwired to only go after the enemy with the lowest AC. While I can appreciate a healthy dose of "geek the mage" in the AI's tactics I do feel it needs to be a little more complicated.
At a DnD table the DM chooses what target the enemies will go after in an intuitive way an AI can't perfectly replicate. But the AI could have some weighted variables that simulate that intuitiveness.
For example. They could heavily prioritize low AC enemies as a baseline but also factor in proximity. And the idea of taking an attack of opportunity to reach the low AC target should be an equally massive priority shift to attack whatever you can already reach.
And of course disengage needs to not be a bonus action for everyone. Jumping also needs to proc attacks of opportunity.
Amusingly the best tank I've been able to make so far is my dwarf ranger. AC is just a middling 16ish with medium armor but he has massive amounts of HP. When he's in their faces enemies seem to actually take swings at him rather than run past him to kill Gale.