How should we go about re-using an AnimationTree across models, such as with male and female variants?

1 - those tree structures are a mess.

you need to create the scene and there has to be no inheritance from the file other than humanoid skeleton, which you set up before creating the scene, in import.

HumanMale and HumanFemale should not be there.
woman and man should be the root of the scene. change node type to character body or whatever you use.

animationTree and animationPlayer should be siblings.

this is what it should look like:

2 - here’s a tutorial on how to import a character into godot:

3 -

with all of the above, you follow the first steps in creating a new character scene from file, then take the animationtree from the old scene and copy-paste into the new scene.

the animation names should be the same or it will throw errors. you can fix these errors by changing what doesn’t match in case you have different animations, just change the animation.
the tree structure should be the same and the skeletons have the same name.
both must be humanoid (have a humanoid bone profile).

I do this all the time, I start with a bot character for prototyping and then create a new one from the new models and copy-paste ALL the nodes, attachments, colliders, etc too. I just change the root to CharacterBody3D and add the script.