I've successfully done this with a .NET Core 5 Mvc app, delivering a separate Blazor WebAssembly SPA from a razor pages site. I'm using the tag helper and am manually referencing the _framework/blazor.webassembly.js file. It nicely keeps the razor pages layout and delivers the SPA seamlessly within the razor pages site and is fully interactive.
Because webassembly is run entirely in the browser, I'm curious if there's a way to do the same with a .NET Framework 4.8 MVC app. I would think that all the MVC app needs to provide is access to the _framework/*.js files to boot up the Blazor app.
The Blazor project targets .NET Standard 2.1 so I don't really see why it wouldn't be possible. .NET Framework 4.8 just needs the equivalent of RenderComponentAsync. Does this exist?