Basically, you can add Product attribute by Typing (items.xml) or Classification (Impex).
Typing approach is when you product definition is shared by large part of your products into catalogue.
Classification approach is when you have high product diversity and you want to propose automatic comparaison.
If you have already too many Typing custom attributes, maybe your solution is using the wrong design for some of them.
Official documentation : Product Modeling