Thanks for the quick response Harald.
The first problem was fixed by the runtime update (thanks).
Even with the latest runtime, I tested the builds with and without the fix box checked, but didn't matter the files would still be reimported and checked out in perforce when making a build. My understanding of the problem is that you're doing a preprocess build (to destroy this preview mesh) which causes the asset to import through the asset database, and postprocess (to reset them). This the the problem that is causing the reimport of these assets and Unity to checkout these assets during this process. Perforce doesn't exclusively lock the files, but does visibly show the file is checkout by others. The users need to monitor these checkouts to monitor who else is modifying and notify them.
I think my solution right now is to disable this HAS_ON_POSTPROCESS_PREFAB define and have our artists endure the lack of prefab previews. While not great, I checked with the artists and they OK with losing to prefab preview to fix these checkout issues. Ideally, I'd think there'd be a HideFlag config somewhere that could fix this? I did try with DontSave | HideInInspector combination, but yeah ran into errors being thrown when included in the build as others mentioned. Maybe we could have a runtime scriptable object lookup mesh cache library that could be created? Regardless, I'll move forward with this disabled and our use case maybe is just an outlier. I wanted to check with you first to see if there was maybe something else we could try to work around our problem. I'd rather have time be spent on other things if there's not an easy solution (like multithreading :yuno: 😉 )