I would recommend making base skins for the races to be done in Spine, to account for small variations between races. (ears or hair or other body parts may animate differently based on race)
Then you have "equips".
For these, create a manageable set of generic (placeholder) types for each type of equip. For example: one for large swords, one for small swords, one for big armor, one for small armor, one for medium armor, etc... and in whatever armor-matching scheme you may have in mind.
Then your hundreds of variations armor and weapons can be designed to stand in place of the generic placeholders.
This means you won't import all your weapon variations in Spine.
Skins and attachments can then be created and composed at runtime.
For Spine in Unity specifically, see the "Mix and Match" sample scenes and code in the unitypackage to see how to implement this on the runtime side.
Also see this documentation: Spine-Unity Mix and Match
"Mix and Match" isn't "best practice" as much as it a showcase of some tools you can choose from. The implementation and their use will still depend on how your game works.