Alpha blending Collections / Groups

I’m looking for a way to animate a single alpha transparency property for a mutli-colored/textured object. First let me demonstrated the problem with a short screencast:

What I’m doing here is using a driver that maps location of an Empty to the factor parameter of all the materials’ mix shaders. Obviously this doesn’t quite do what I need, as the semi-transparent objects reveal hidden geometry. The other approach I figured was using a texture with all the colors and then UV mapping parts onto small areas of the bitmap. Which could get me the result as all of teh objects would use a single material with a global alpha, but the setup is super tedious.

Can you think of some more straight forward way of having a global alpha for a collection?