The experience of literally every browser vendor does not support your claim that it is 'trivially cheap'.
Problems worth thinking about:
Sharing jitted code across processes (including runtime-shared things like standard library APIs) - lots of effort has gone into optimizing this for V8.
Startup time due to unsharable data. Again lots of effort goes into optimizing this.
Cost of page tables per process. (This is bad on every OS I know of even if it's cheaper on some OSes).
Cost of setting up process state like page tables (perhaps small, but still not free)
Cost of context switches. For browsers with aggressive process isolation this can be a lot.
Cost of fetching content from disk cache into per-process in-memory cache. This used to be very significant in Chrome, they did something recent to optimize it. We're talking 10-40 ms per request from context switches and RPC.
Most importantly the risk of having processes OOM killed is significant and goes up the more processes you have. This is especially bad on Android and iOS but can be an issue on Linux too.
ASLR and other security mitigations also mean you're touching some pages to do relocation at startup, aren't you? You're paying that for dozens of processes now.
Those are all costs of doing multi-process at all. Once you've committed to that (which every browser vendor did long before spectre was a thing), doing it per site-origin doesn't significantly change things.
As for the actual problems, many of those are very solvable. Startup time, for example, can be nearly entirely eliminated on OS's with fork() (and those that don't have a fork need to hurry up and get one) - a trick Android leverages heavily.
Cache round-trips in chrome were historically 10-40 ms, you could see it in devtools. I have old profiles. You're thinking the optimal cost of a round-trip, not the actual cost of routing 1mb assets over an IPC pipe
Problems worth thinking about:
Sharing jitted code across processes (including runtime-shared things like standard library APIs) - lots of effort has gone into optimizing this for V8.
Startup time due to unsharable data. Again lots of effort goes into optimizing this.
Cost of page tables per process. (This is bad on every OS I know of even if it's cheaper on some OSes).
Cost of setting up process state like page tables (perhaps small, but still not free)
Cost of context switches. For browsers with aggressive process isolation this can be a lot.
Cost of fetching content from disk cache into per-process in-memory cache. This used to be very significant in Chrome, they did something recent to optimize it. We're talking 10-40 ms per request from context switches and RPC.
Most importantly the risk of having processes OOM killed is significant and goes up the more processes you have. This is especially bad on Android and iOS but can be an issue on Linux too.
ASLR and other security mitigations also mean you're touching some pages to do relocation at startup, aren't you? You're paying that for dozens of processes now.