Right. PCs don't know that. They just see a wall of ice.
Okay, just so we're on the same page. I agree that intelligence (in the military sense) is key, and that if you don't know what you're facing it gets exponentially harder. "Unknown unknowns" and all that, or in other words uncertainty >> risk.
Range characters are a lot easier to deal with when you see how many ways there are to break LoS, even without a physical obstruction. There are a zillion spells that provide heavy obscurement which will block LoS and effectively remove the ranged attacker's ability to effectively contribute in combat.
It kind of depends on how you run heavy obscurement. Some people like to make ranged attackers play a guessing game of "which square am I in," in which case yeah, attacking through heavy obscurement isn't really feasible (and Pass Without Trace becomes a superpower--Dancing Lights and all that, we've talked about it before). If you just go with "attacking gives away your position and you can then be attacked at disadvantage", heavy obscurement hurts, but it's not crippling the same way it is under the "guess where I am" playstyle.
Most of the ways you've listed to break LoS involve spellcasting, and spellcasting opponents are orders of magnitude more dangerous than regular opponents. Or if not orders of magnitude, at least 100-200%. That's why I give my dragons Sorcerer levels, so they're not pushovers. Spellcasting dragons can mess with spellcasters just as easily as they can mess with ranged characters, by Counterspelling, (Quickened) Dispelling their Fly/Haste/Protection From Energy/Death Ward combos, Misty Stepping past Walls of Force, etc., etc.
One of the most important questions to ask during recon phase of dragon slaying in my games is, "What spells does it know?" Or in other words, when you cast your Commune/Divination/Contact Other Plane/whatever, ask questions like, "Will Ferrovankoth be able to counterspell my magic?"
And when you don't have spells, there are plenty of physical obstructions on most battlefields, just try to have as many enemies as possible end their turn without providing LoS to the archer and you'll see his effectiveness drop significantly.
Long-range archery duels with terrain are fun. I don't think melee characters are better at this game than archers are, but it certainly does complicate and prolong the conflict, and it provides more opportunities for archers to make a mistake and get waxed by melee dudes.
That is, you'll see the archer's per-round effectiveness drop markedly, but his overall relative effectiveness delta is harder to analyze. At minimum he can hold his actions waiting for a target to pop up, but then he only gets one attack instead of two or three.
Your point is taken, though. It's possible for the archer to simply shoot down many walls, but even so, that's a round they're spending not damaging your monster, and it's far easier to do this to a ranged attacker than a melee'er in most cases, since IMC ranged characters tend to stay away from the thick of things, generally popping out 15 ft from cover, shooting off some arrows or a cantrip before retreating back behind cover. This frequently makes them more easily isolated by these kinds of terrain/battlefield/visibility control effects.
The way I prefer to use ranged combat is to keep ranged combatants within mutual support range, but dispersed enough to mitigate area effects like Medusa visages and dragon breath. In this kind of a situation, a dragon who puts up a wall is spending a lair action to burn a few attacks from the archers (assuming they know that it's feasible to shoot through it), which is worth doing since it's free but doesn't really cripple the party. Since overkill is a core value, if I've brought 24 skeletons and 16 Giant Owls as outlined in my previous post about how I'd hunt an adult red, the white dragon's ice wall will be no more than a minor inconvenience. In short, what I'm saying is that ranged attacks scale very nicely--but if you have only a single ranged character the scaling benefit is less important and the archer may be subject to isolation as you describe.
On the other hand, isolating a single melee character (e.g. via grapple + fly) is often better. Isolating an archer might mean that you're fighting 3 melee characters without archer support; isolating a melee character means you're fighting 1 melee character with 1 supporting archer, possibly at disadvantage for long range. The latter is more advantageous if you can manage it.