Metaball-style merge effect on two modelled and realistically textured human heads possible?
Combining the meshes with the Boolean modifier and then smoothing out the result is an idea worth exploring. Example:

Settings:

If the two faces have very different shapes, you could use a shape key to morph both faces into something in between, so that they blend more nicely.
You can also use additional boolean modifiers if you want to ensure that the merging faces don't pass &quot;through&quot; each other (i.e. if you don't want the moving monkey's right ear to be visible near the end of the animation, you could &quot;mask&quot; it out with another Boolean intersection modifier).

keyframing the skin meshes towards each other in a stretching fashion

You can also add various distorting modifiers before the boolean merge to achieve the magnetic stretching effect you describe (e.g. with a Lattice modifier or similar).
Challenges
While the basics of this technique are easy to implement, you might run into difficulties if you want a more complex animation:

This technique forces you to use a smoothing modifier, which might be undesirable. However, you could fade it in as part of the effect and fade it out when the animation is complete.
The faces need to be single, non-self-intersecting objects. This means that you would most likely have to deal with other components, such as eyes, individually. (In the example above, I modified the Suzanne model so that the eyes are connected components).
UV texture coordinates will be unusable due to the boolean modifier. I can suggest either texturing your model procedurally, or rendering another version of the animation with textures, but without the merging effect and then combining these two renders during compositing.