In software development, when things are version controlled, deleting a file from a repo and then uploading a file with the same name can either result in brokenness or in restoring the history, since no files are permantly deleted in the repo, adding the file back in is simply another step in the history.
Once you've made multiple material changes, deleted, restored, named a different material but made no other changes, it's possible that the repo doesn't detect a change that minuscule as the object would be identical in most ways, so the material doesn't update in engine until next load. I suspect it would update on area change, or once the material has dropped from memory.
The thumbnail in the library is an auto generated file, so if you manually deleted the button, and the model file, but then added a file with the same name, that thumb would correspond again.
None of the lag in upload happens to me, so I suspect it's still due to a local something, poor connection, fragmentation, etc, but it could be an annoying quirk in the engine, but as long as the files are updated correctly eventually I wouldn't worry about it.