Manual setup of user's language
I don't really understand your use case correctly, but probably you need to implement a language negotiation manager. See an example at /core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationBrowser.php.

If you also need to change the url for adding language, or changing how the links in language switcher work, you may need to override some more methods. See an example at /core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationUrl.php.