Sunset, and it's not even close. Sunset has had a better reformation process that feels completely natural and is very well paced, better backstory and motivation to be a villain, a better personality, and an all around more likable character. Starlight always has to remind us that she tried to take over a village, yet no one cares anymore. Sunset on the other hand knows what she did but doesn't bring it up when she messes up, she actively tries to improve herself instead of moping around about her past, and that's one of Sunset's best qualities.
The funniest part is, is that Sunset has had significantly less time to explore her character than Starlight; and Sunset still easily comes out on top.