I think what you’re looking for is material instances.
The have all of these features. You can make one master material and tweak lots of parameters on the instance in blueprint: