Reasons that make sense why they did it and didn't really break their promise if another force is use on the situation. Luffy isn't done fighting with BM. He come back to defeat her and was focus on wanting beat Kaido first.
Sanji cook to save hus friends which is true. Nothing could stop BM at all and they would die. He did it and thus he cook to save his friends and everyone not because he want to treat enemy a good time.
We are not talking about breaking promises here.
We are talking about objective facts;
Character says he will do X = doesn't end up doing X.
Reasons are irrelevant here.
So did Luffy run from Big Mom? Yes
Did Sanji cook for the enemy? Yes
That's all there is to it so stop pushing some narrative which has nothing to do with my point