Can someone explain the animation Avatar

I am a bit confused as the best way to take animations from multiple sources, Mixamo and the AssetStore primarily, and make sure they all function correctly in my scene.
I have a character downloaded from the AssetStore. I also have animations from Mixamo and Animations from the AssetStore.

It seems everyone will have there animations rigs set-up slightly differently at least from a naming perspective. Pelvis and Hips is my currently example.
I also have a Soldier Avatar from my character, and 2 other Avatars from Mixamo and my AssetStore Animation pack.

I seem to be almost successfully just telling my animation rig to copy the Avatar it came with. This means I have an Idle animation using Mixamo and it's Avatar, a run animation with the MotusMan (Pack) animation and Avatar and I am assigning my character Animator Avatar as my Soldier.
As they are Humanoid they kind of work but I am getting some small bugs and I want to see if the combination of all of the avatars and rigs would be a potential issue I should fix now and not later.


Firstly, should I be using one avatar for my Animator and all of my animation Rig Avatars? If so, how can i get them all in sync? I usually find I get "Import Errors" when trying to use my Soldier Avatar on my AssetStore Animations.
Is it fixed in Unity or something else like Blender?
Here are some example sticking points but looking to understand Avatars and Animation over the quick fix for these.

the avatar is something that makes absolutely no sense in unity. Lets say I have an animator that’s on a completely empty gameObject. I can add the Avatar for a completely seperate model. Why? Why can I even do that? It makes you wonder what the Avatar section is even checking. If I use the Animator that comes with a lot of rigged models, and I have the Avatar set to the models Avatar, it works, at times. But I have no idea how? What if I add a parent object to the model and add an animator with the Avatar set the same? Will it still control the model underneath it? How does it even know what model to check? Or does it even know?