My reasoning after reading so many of these types of stories is that the word 'hero' does not have the same meaning as the normal definition in the english language. The word 'Yuusha' in Japanese is not the word used for 'One who saves/protects others' , it is meant to be the word for 'One who vanquishes evil'. Even if you can destroy evil creatures, it does not necessarily mean you're a 'good person'.
Anyone who is more learned on the matter, please correct me in the comments.
I can't speak for the Japanese take, but this certainly conforms to the original, classical Greek take on it, where a "hero" was just someone who undertook great quests for glory and honor; it was just coincidence that these quests often included slaying monsters that plagued people.
For instance, there was Jason (of the Argonauts) who went in search of the Golden Fleece; he only went in search of the Fleece at the order of a king, who wanted to give Jason his throne. During the quest, Jason enlisted the help of Medea, who even kills her own brother to aid Jason.
At the end of their quest, Jason and Medea marry, have kids, and settle down... For 10 years, at which point Jason abandoned Medea and had her exiled so he could marry the daughter of a king. Medea, in revenge, poisons Jason's new bride
and her (Medea's) children with Jason, killing them all to rob him of his legacy.
Despite all that, Jason is still considered a hero by classical definitions, even though modern definitions would consider him little more than a mercenary and an asshole.