### Godot version

v4.1.beta.custom_build [72b59325c]

### System information

Windows 10, Vulkan

### Issue description

This has been plaguing me for a while in my main project. I can only partially reproduce it in a MRP:
When placing a binary mesh resource imported from a .glb file into a MeshInstance3D, it will be gone upon restart. It doesn't seem to happen to every resource, but I've had MIs that were fine and then start doing it out of nowhere.
I thought it was going to be related to materials due to things like https://github.com/godotengine/godot/issues/77007 but I can reliably trigger it with the steps listed below.
I have done limited testing on .tres files because I usually use .res for size/performance, but in the MRP .tres doesn't seem to trigger it, so perhaps it doesn't affect those.

Note on the Steps to reproduce: you have to delete the test_cube.res and redo the steps to trigger the bug again, but in my main project the affected resources always disappear.

### Steps to reproduce

1. Double click test_cube.glb
2. Click the mesh (test_cube_Cube_097), set save to file path as: res://test_cube.res
3. Make sure to click the little folder icon and then Save (this seems to make it consistent to proc)
4. Press Reimport
5. Drag the test_cube.res to the Mesh slot of the MeshInstance3D
6. Ctrl+s to save
7. Project -> Reload current project
8. Mesh is no longer in the MeshInstance3D

### Minimal reproduction project

[binary res bug.zip](https://github.com/godotengine/godot/files/11681009/binary.res.bug.zip)
dest_paths.push_back(E);
			}
			String value;
			VariantWriter::write_to_string(genf, value);
			f->store_line("files=" + value);
			f->store_line("");
		}
		f->store_line("source_file=" + Variant(p_file).get_construct_string());
		if (dest_paths.size()) {
			Array dp;
			for (int i = 0; i < dest_paths.size(); i++) {
				dp.push_back(dest_paths[i]);
			}
			f->store_line("dest_files=" + Variant(dp).get_construct_string() + "\n");
		}
		f->store_line("[params]");
		f->store_line("");
		
		for (const ResourceImporter::ImportOption &E : opts) {
			String base = E.option.name;
			String value;
			VariantWriter::write_to_string(params[base], value);
			f->store_line(base + "=" + value);
		}
	}
	
	{
		Ref<FileAccess> md5s = FileAccess::open(base_path + ".md5", FileAccess::WRITE);
		ERR_FAIL_COND_V_MSG(md5s.is_null(), ERR_FILE_CANT_OPEN, "Cannot open MD5 file '" + base_path + ".md5'.");
		md5s->store_line("source_md5=\"" + FileAccess::get_md5(p_file) + "\"");