It’s a little hard to image what you have going there, maybe you can elaborate a bit, but…
Yes, basically. Each mesh would need an ID, and you need to save the ID with the material you want to be known for that mesh.
These IDs are something you invent yourself, it’s not a system thing.
If your meshes are blueprints, it’s easy, just add an integer variable ( different for every BP ). When the user changes the material the BP writes it’s ID to the save game together with the material used.
If the meshes are just plain static meshes, bit more fiddly. You would need to so something like saving the level and object name and the material.
Sounds like a bit of a pain, right? That’s how it works I’m afraid.
The other alternative, is to get a plugin to do it for you: