I'm afraid Larian's solution for this will be the loaded dice Swen mentioned.

But the swingy d20 is only one part of the problem. And it's not about succeeding every check to begin with. Loaded dice would let everyone succeed more while the actual problem remains the same.

The actual problem is that if I make an intelligent and highly charismatic character with a Criminal background and put every point into Deception I possibly can, I expect this character to be very deceptive and manipulative. But they are not. That amounts to a +5 modifier to any checks which is a 25%. It's simply not significant enough. Someone who put nothing into Deception or Charisma can beat me at my own game. And with loaded dice it could actually get even worse.

It's Larian's own fault how they design these checks, really. They could open up passive Deceptive dialogue options at +1, +2, +3, +4 , +5.. and only make you roll d20 if you are under pressure or in some extreme situation. Or they could make the consequences of a failed roll much less severe for skilled characters.

Somehow the difference between 0 and +5 has to be much more significant than a 25% difference in success rate. Especially for a specialized skill like Arcana or History, that should require proficiency to even be allowed to roll in the first place. An uneducated Barbarian with 8 Int will not remember details of the Netherese hierarchy structure, natural 20 or not.

I think Larian need to rethink how skills work in BG3. Bring thresholds into the mix to make skill levels more impactful. And be very careful where to use the d20 rolls.