I don't understand why Sanji was everyone's problem. He was a mess at times, but he was in a difficult situation after all.
I see some call him out for leaving the crew, but: he felt like a burden to his own family from the start. A traumatized person like that will continue feeling like a burden his whole life. He did not want to be a burden to his crew, especially since they didn't deserve it in the least bit, so the best solution he saw was leaving. Tbh, if BM was on my back I'd run too.
I need to defend Sanji's character development here for a second:
1) He proved himself to his family since he saved their asses more than once. And they were ALL impressed by him, despite all the bullying he got in the past. Which is a huge win for Sanji.
2) He bonded more with his sister, someone does in fact care about him deeply. Their bond is also important because it reflects from his bond with his mother.
3) 1 on 1 fights are not everything, the cake is a much more creative way to stop a villain.
4) In contrast to ALL OTHER TIMES, he was actually a huge gentleman to Pudding. He respected her wishes and tried to do right by her as well. Massive hero for telling her she is beautiful, a burden she carried her whole life was lessened in that moment.
5) For once a woman truly loved him, I can't help but be glad for him.
6) He at all times put Zeff's and his crew's well being as top priority.
7) Getting the Raid Suit is symbolic. It represents finally coming to terms with his past and overcoming it by using the suit for its powers, instead of being stubborn and pretending it doesn't exist. He accepted his family, as shitty as it is.
I'm not eloquent like some of the above, but this pretty much resolves all of his baggage.