Is there some way to map different image textures to instances of linked duplicates?
Keep the object data linked, but make the material linked to the Object, not Object Data:



From there, make a new texture for each object-linked material. That way, several objects can have different textures, while still sharing the same object data.