The key insight was the app runs with the System.Runtime.dll version 4.0.0.0, this confirmed that a NuGet package (from NETStandard.Library and one of its transitive dependencies) was bringing in a newer version of System.Runtime than the one baked into .NET Framework.
This 4.1.2.0 version is not the native GAC version - it’s a NuGet-delivered reference assembly, and was overriding the framework version during JIT and emit, which is why Edit and Continue broke in this particular project (not all in solution). Like the error states it doesn't support changing a DLLs version in the middle of a debug session.
To fix it I got the 3 open source reference projects that didn't have net4.8 targeted builds. These were targeting previous .Net 4.x or NETStandard builds and during debugging the dependency graph gets the latest DLL! I downloaded the open source projects, edited the projects targeting .Net 4.8, built them. Then removed the Nugets from main solution project(s), added the DLLs Refs now targeting net4.8 and now Edit and Continue works!