I feel weird diving deep into a discussion of Christian morality in a fantasy book, but you brought it up and I find this topic compelling.
No action (or lack of action) we take in the real world is devoid of negative, harmful consequences, even with the best of intentions, because we can't know the all the ramifications of our choices, even when we have the best of intentions. To me, sometimes you must take the best action that you can, given what you know, and accept the consequences of those actions.
St. Augustine takes this up in his book the City of God. That book deals with dilemmas early Christians faced in trying to live out their faith in real world, or what he called the City of Man. He asks whether it wouldn't be better for Christians to withdraw from the world to keep themselves pure, because by interacting with the City of Man, they couldn't escape participating in the evil that happens there.
For example, even the best of judges doesn't always know whether the person before them is innocent or guilty. This means that sometimes (too often no doubt) an innocent person is punished (or in his analogy tortured), but a judge still has a responsibility to maintain justice and order in society. He argues that the world is better off that good people are judges, even though the job sometimes forces them to harm innocent people.
Augustine argues that it is important both to recognize that sometimes such things are necessary and moral, and yet "none the less condemn human life as miserable." His point being that we should try to avoid such injustices, but accept that they are an inevitable and yet necessary part of being a moral person in the real world. Finally, he argues that it would be worse to shrink form that responsibility, because you don't want to get your hands dirty, and allow people of lesser character take your place. Rather, "cry to God, 'Deliver me from my necessities!'" In other words, accept that sometimes you will do things that are wrong, maybe even appallingly so, because to not do so would be worse.