My take on OP from someone that has only played the table top DnD game one time. I am just a gamer who loved Divinity 2 and so here I am enjoying bg3.
Missing all the time isn't just annoying, it is extremely slow paced especially in larger fights where I have to wait 3 mins to get a turn again. I like a good grind and want to feel progression as I level up, but personally leveling up to attain better accuracy seems stupid. If you are fighting something higher level, something on higher ground, something in the shadows it makes sense to have a lower accuracy. But when I am face to face with an enemy and have a 60% or lower chance to hit, of which is the same level as me, among other similar scenarios that is absurd. Lower accuracy when blinded, when an enemy has mirror image, if an enemy is a higher level etc makes sense. This base accuracy in most situations is really frustrating and takes away from the enjoyment. When an enemy is prone and I miss standing next to them it is absurd. Adding HP to enemies health pool and granting more accuracy would feel better in my opinion.
How adv and disadv work I am still learning. The OP was actually quite educating for me. But I will say: every fight seems to be a question of how can I increase my chance to hit? The entire fighting mechanics is how can I increase my chance to hit. Instead of spending actions / spells / bonus actions on cool combinations I am forced to spend them on lights, faerie fire, or something that is saving throw'd so the turn is just as useless as attacking with that 40% chance to hit. Instead of programming smart AI it seems hit accuracy is the primary difficulty meter.
I agree with the OP with adv on backstabbing and height (to a point). Why on earth would an enemy just stand there while i move from his front to his back, while I get an advantage on attack? For height, someone 2 feet above me shouldn't get adv. I support height advantage from an actual high level, but when I can stand on a crate and get height advantage it seems a little stupid.