People can say dumb things such as Sanji ran away or what not. Dumb things that only began after the Toei version of Sanji vs P1 happened. But logically speaking, we know P1 got defeated.
- P1 stated he will destroy the town -> After the fight....no town destroyed
- P1 in the team looking for Sanji -> After the fight....mysteriously disappears for 2 weeks
- Drake nonchantly looking for Sangoro -> After the fight.....Drake pissed at Sangoro
- Sanji worried for the town -> After the fight.....Sanji not worried at all
- Law trusted Sanji to handle P1, so they dont worry about people coming after them - After the fight....Law not worried at all
It's blatantly obvious P1 was defeated. Whether he was two-shotted or was defeated with more attacks is besides the point. Theres no way Sanji would leave him to destroy the town. Theirs no way P1 would just leave Sanji alone after getting beaten up. Theres no way Sanji and Law wouldnt be worried....if P1 was not defeated.
Now....why did Oda off-panel it ? Simply because it would make P1's opponent look bad. In this case...Usopp.
Usually when villains are defeated....they begin to look like scrubs after that. Here are a few examples:
Narratively, Oda doesnt want Usopp to fight Sanji's leftovers. Yes....we know Sanji is far stronger than Usopp. But RS Sanji would logically beat the crap outta him. Whether it was a 2-shot or not, P1 would've gotten rag dolled and toyed with. Having him then fight Usopp....whilst new people, who havent been dehyped fight other SHs....just wouldnt be fair to Usopp. Oda off-panelled it for that specifc reason.
It maybe later revealed that Sanji defeated P1. But I don't think Oda will ever show Sanji defeating P1.