Sanji is built to have/posses the trait of character duality in his writing. For example :
- His dream is water related, yet his ability is fire related.
- His plotline is someone who save people, yet he also need to be saved.
- His status is a royalty, yet he also proclaim to be a slave.
- He acts as a gentleman, yet also a pervert.
- His persona is emotional, yet he's angry all the time.
Etc.
So for most aspects of his character, he will possess both/opposite ends of it.
Thus, because he has strong willed moments, he will be written/must have weak willed moments too.