Sort of yes and sort of no. All of this behavior is defined in code you control. By default, the :browser pipeline fetches the session and calls some other plugs that use the session, but you can change all of this if you want.
Just a few days ago I set up sessionless LiveView so that I can use it in a context where the page is served by a proxy that strips all cookie headers. Yes, you have to touch the code in 5-6 different places, but it’s all your code. The code that Phoenix generates isn’t sacred, and can/should be changed to meet your needs.
So, is there a single switch? No. Is there a simple pattern? Yes: it’s the same pattern that the rest of the application is generated around. Create a new plug pipeline replacing the bits you don’t want with bits you do! This lack of “magic” requires a bit more effort up front but should pay dividends when your requirements change slightly months down the road.