I think that thoughts can be plenty harmful. The only reason we don't punish people for their thoughts is that we have no way of reading people's thoughts. Realistically, if everyone's thoughts were on full display, a lot of people would be getting castigated, watched, and/or detained.
Does a consensus define evil? Is evil only something that is culturally relative? A city of drow would reach a very different consensus about what is evil than a village of halflings, would they not? I feel like D&D, at least, has a sort of idea of cosmological evil, which goes beyond what any particular people think of as evil, or even beyond a creature's actual observed behavior. A demon could be on his best behavior and not actually running amok murdering people, but still be fundamentally evil.
The eternal battle between "Shadowheat is evil because she is a Sharran" or "she isn't evil because she doesn't disapprove of the outcomes of a goody-two-shoes PT"
By being a Sharran, she has committed crimes in the name of her goddess. There is no "we haven't seen it, so it didn't happen" here. You aren't a member of Shar clergy, like Shadowheart, without committing atrocities. Refusing to do them would get you killed or worst.
Did it happen a few times that her heart wasn't into it? Maybe, it's not like evil characters are all robots. In the case of Shadowheart, she feels bad about the Tielfings, yet she doesn't seems to care about the Druids. Wouldn't a good person feels bad about both?
Was she evil before joining the clergy? Probably not. The people who join Shar willingly usually suffered a great loss (major depression just want to see the world burn type). Otherwise they were forced into it via destruction of their previous self (using torture, gaslighting, abusive manipulation, etc). I did say that what she needed was therapy and not a redemption arc. It wasn't a joke.