Probably most of us here on the forum live outside of TL countries and live without native-speakers as significant others. This doesn't seem to stop us from having a never ending quest for the seemingly elusive native-like command of a language we are learning. Ironically, if someone had told me when I was a monolingual learning my first L2 that I would be able to communicate in most situations with relative ease but still wouldn't be able to get my car repaired or know the words for shoestrings or clothes hanger, I would have been thrilled. I have no real need to learn about clothes hangers in Ladino, Haitian Creole, or Lesser Antilles French Creole and haven't run across the word to this day in my conversations, reading or media.
The good thing about reaching a high level is a learner can ask for what they don't know or research it and learn it when or if they may need to know it. So, to answer the OP- yes, a learner can reach C2 without a native-level immersion. It's done all the time. Can a learner reach a "native-like" level without a native-level immersion? No, not if being able to deal with any situation that may come up in a typical life is required. If a learner isn't in the situation to need the vocabulary or expressions required, it is difficult to artificially learn them. We may use shoestrings and hangers every day, but they are not a topic of everyday conversation. Neither are we likely to come across those words in our everyday reading, listening or watching media. I'm ok with it. I have no shame in not knowing them in all of my languages... but I'll probably go and look them up now!

Edit:
Haitian Creole:
clothes hanger: sèso; chèso
shoestring: lasèt
Lesser Antilles French Creole/Kwéyòl
clothes hanger: ouvè la
shoestring: fisèl soulyé la
Ladino/Djudeo-espanyol
clothes hanger: enforkador de ropa
shoestring: kuedra de sapato
Edit 2:
Catalan
clothes hanger: penjador
shoestring: cordon