I think there's a lot of hangup on the choices you don't want to make anyway.
Like I don't want to cheat on her, but I am upset about how she reacts if I do. Well, you didn't want to cheat on her in the first place, the problem only exists because you have meta-knowledge about the code and writing outside of your roleplaying choices. Non-cheating Tav never learns or knows about Shadowheart's reaction to cheating, so non-cheating Tav wouldn't really have any thoughts or concerns about it. In terms of immersiveness I don't see a problem (with the caveat about the messy Halsin situation that can happen even if you aren't looking to make those choices).
Character inconsistency and writing is a different story, it's a meta-discussion and can of course include everything you know about the character in every scenario.
And propagation of rape-culture from a character that is supposed to represent good and healthy values is a real world problem and a very important discussion, because real people matter, unlike pixels and code.
So you want her to scream at you? Break up with you? As I said Tav is probably the most important figure in her life, think about this.
I 100% agree on Halsin. Halsin situation is just stupid and not only for SH, but Astarion/Gale romancers aswell as far as Im aware.