I see that this can be useful sometimes. I think the main issue with this approach is data block management. Currently, a material node tree is owned by a material.
With this proposal the relation between materials and node trees becomes quite a bit more complicated. Also it is less well defined when e.g. the same material is accidentally controlled by multiple node trees.
Also think about what should happen when you link a material into another file, should all materials be linked?
I’m not fundamentally against this, but there are too many open questions currently. I’m not sure if the complexity of a correct implementation is worth the added user benefit. Node groups can be used to achieve similar functionality without the mentioned issues.