You can make a material function and reuse that on each opacity. That makes it easy.
You’re just setting one parameter and any materials with that function will fade.
Editing 7 materials doesn’t seem like a big deal, unless you have some asset pipeline that comes from the outside and would replace the edits with each re-import.
You’d probably want two copies of the materials – one with transparency, and one without, and swap the material instances to use the with-transparency ones only when actually needing to fade. Else you might get triangle sorting issues or just general efficiency loss.
Another option is to use a custom render target for your character – maybe also a custom depth stencil – and render that render target to the main framebuffer using blending.