Multiple materials per polygon?
Maybe this can be realised (if I understand your question correctly, that is) by utilizing Blenders ability to link materials to the object instead of the object data, as it does by default. What I'm talking about is this little dropdown here:



What that does is, it tells Blender to keep track of Material assignments by storing the assignment on the object instead of the object data (the mesh itself). The trick now is to use instances of the same object, and assign different sets of materials to those instances. You can instantiate the objects using Alt + D, and verify the presence of an instance if there is a number appearing at the mesh datablock:



Now, if you have a setup like this, which the three heads instanciated:



and you move a vertex in edit mode:



after getting back to object mode, you have this:



So you can now edit the mesh once, but export different objects with different materials at any time from it.