All right, I gotta say that I am more than a bit surprised that this candidate hasn't been proposed yet, so I am going to give this one a shot. My proposal now focuses on Lillie from Pokémon Sun and Moon, and Ultra Sun and Ultra Moon. I haven't been caught up on the anime for a long time and haven't read the manga, though I have played the games featuring her to make up for it, so let's get started.
What is the Works?
Pokémon Sun and Moon (and Ultra Sun and Ultra Moon) is about the main protagonist who has moved all the way to the Alola Region from the Kanto Region with his/her mother and they meet Professor Kukui, who would provide the player and the rival Hau their first Pokémon (Rowlet, Litten, and Popplio) so they can start their Pokémon journey. Sun and Moon and Ultra Sun and Ultra Moon have island trials that the player must complete and battle Totem Pokémon to acquire Z-Crystals so Pokémon can use powerful Z-Moves and the Island Kahunas to complete the whole island trial before traveling to the next island. Lillie plays a prominent role where she travels with the player and Hau, but she isn't a Trainer and spends her time shopping, and keeping Cosmog (nicknamed Nebby) in her large bag she carries around and only lets it out when it was safe for her to do so. I should note that Sun and Moon + Ultra Sun and Ultra Moon have slightly different alternate realities, to prevent too much confusion.
Who is she and what has she done?
Lillie is a young girl who grew up at the Aether Foundation with her father Mohn, her mother Lusamine, and her older brother Gladion. She is timid girl who had become Kukui's assistant after she was found washed up on shore, and happens to have a strong dislike of Pokémon Battles as she doesn't like it when Pokémon get hurt. She is seen making her way to the ancient ruins, but when she reaches the unstable suspension bridge, Nebby gets out of her bag and is soon attacked by a flock of Spearow, which Lillie asks the player to save it, as she was too afraid as she doesn't have experience. When both the player and Nebby are saved by the island guardian Tapu Koko when the latter's power destroys the bridge that caused them to fall, she begins to open up to the player and gives them the Sparkling Stone (which would be molded into the Z-Ring in Sun and Moon or the Z-Power Ring in the Ultra series). She soon travels with the player and would be shopping for Repels to prevent Pokémon attacks most of the time. As the player's journey progresses, she tends to get lost either because Nebby wandered off without her knowledge, or she deliberately does that to hide from a gang of delinquents who are dubbed Team Skull, who cause trouble, steal Pokemon, target weaker Trainers, and harass non-Trainers. When they're offered a tour around Aether Paradise, an anxious Lillie immediately turns it down and decides to just travel to Ula'Ula Island while Hau and the player travel to the foundation for the tour.
Later, Lillie and Nebby are kidnapped by Team Skull while the player is away and brought to Aether Paradise, her long history with it is revealed and so is Lusamine's true nature: (Lusamine is either driven insane by Nihilego's toxins in Sun and Moon with a desire to travel to Ultra Space to be with the Nihilego, or she genuinely (though misguided) wanted to protect the world from Necrozma, while doing just about anything (including morally questionable methods) to accomplish it in the Ultra series). Lillie warns against using Nebby's power to open the Ultra Wormholes due to the possibility that Nebby would die, but Lusamine doesn't listen and after a battle with the player, she retreats into the Wormhole with Guzma the leader of Team Skull, while Nebby has evolved into a Cosmoem. Lillie begins to understand her flaws and decided to use them to become a stronger person than she is. She changes into her outfit, dubbing it her "Z-Powered Form" hinting that her view of Pokémon getting hurt is now pointed towards cruelty towards them after what she witnessed her mother and Team Skull had done and travels to Poni Island to search for the Sun Flute/Moon Flute. Lillie goes through significant character development as she tested her courage as she runs past the Murkrow on a high bridge, which she overcomes her fear of heights. At the Altar of the Sunne/Moone, when both she and the protagonist play their flutes in sync, she becomes surprised that Nebby evolved into Solgaleo/Lunala and requests to bring them to Lusamine.
Not that I can think of, but from what I remember, Lillie had stolen Nebby from the Aether Paradise Labs and was teleported away during the prologue and she does show herself to be just a little bit cowardly, as she couldn't defend herself or Nebby, however, she does happen to acknowledge her flaws and express remorse for it. So to rise above who she previously was after her mother vanishes, she uses them to become a better person. She reached her breaking point when she yells at her mother for the way she treats her and the Pokemon who resided at the foundation, which may seem disrespectful, but this was completely understandable, as Lusamine had been (because of Nihilego's toxins) abusive towards her and Gladion since her father disappeared and her anger was ultimately provoked when Lusamine disowns her. Her theft of Nebby was justified, since she knew very well how dangerous the Ultra Beasts are, and how much Nebby would suffer from being forced to open the Wormholes, and considering that several Wormholes were opened by Lusamine, which the Ultra Beasts invade Alola. This was all on the account that her father was previously dragged through it (later revealed that he used the uninhabited islands to establish Poke Pelago).
Lillie's best acts are not only shown through her kindness and concern for others, but she also showed that she never resorts to violence without cause and she was extremely determined to bring her mother home and willing to forgive her, even after all the horrible things she did. And depending on the versions which have different timelines; which in Sun and Moon, she goes through the the Wormhole with the player to track down Lusamine and Guzma. When they reach Lusamine, she reveals her intentions to stay with the Nihilego and showed no concern about the fate of Alola and outright tells Lillie that she doesn't need her since she left her. Lillie stands up to her, telling her that children and Pokemon are living sentient beings with a free will, not just things that she owns and can just discard when she becomes bored of them. Lusamine fuses with Nihilego and battles the player, and loses. When she is about to crush them, Lillie calls on either Solgaleo or Lunala to assist them, forcing Nihilego to separate from Lusamine, who then collapses from fatigue. Lillie expressed much worry for her mother and are teleported away when Ultra Space becomes unstable. Poni Island's Kahuna Hapu helps bring Lusamine back to Aether Paradise to get her treated. After the player becomes Alola's first Champion, Lillie congratulates them and mentions that her mother wanted to attend the celebration, but couldn't because of the current state she was in. Lillie resolves to leave for Kanto so she can not only begin her journey as a Pokemon Trainer, but to also help her mother get better after learning that a young man named Bill had a similar incident happen to him. In the Ultra series, she only witnesses her mother and Guzma get kicked out of Ultra Space by Necrozma, which proceeds to battle the fully evolved Nebby, and merges with it and flees to Megalopolis, taking the light from Alola. This time Lillie doesn't come along and after the battle, she reconciles with her mother and return to Aether Paradise to treat Nebby's injuries. After the player becomes the Champion, Lillie stays in Alola while Gladion leaves for Kanto and Johto to train his Pokemon further. She plays a big role during Episode RR, where Team Rainbow Rocket invades Aether Paradise and takes Lusamine hostage; fearing for her mother's safety, Lillie asks the player for help in dealing with the threat and actually battles some of the Rainbow Rocket Grunts along the way, and is angered that Faba was behind the events just to further his own career. After getting in, she still isn't used to battling and is much better at healing the protagonist's Pokemon when spoken to. After Giovanni is defeated, he disappears and Aether Paradise is back to normal. Lillie tells her mother of his deeds, and even when Faba tries to deny it, but fails miserably when Lusamine wasn't fooled by his excuses and deprives him of his Branch Chief position. In short Lillie loving and forgiving towards her friends and family and knows that her mother's being driven into insanity was because of Nihilego (Sun and Moon); in Ultra Sun and Moon, Lusamine wanted to stop Necrozma but she went about the wrong way doing it.
I would say that Lillie has a good chance, but I will leave it up to you if whether or not she should be Pure Good.