i don't think it's an asspull, it's just his birthright catching up to him, even though it was poorly executed, and very predictable.
sanji's body wasn't capable of handling his full power, his opponent need only to survive for 5 minute and sanji would eventually kick himself out, the awakening of the exoskeleton solves that issue.
now he can fight at full power without risking hurting himself
all he has to do now is getting over his daddy issues, then he'll be a complete warrior.