been struggling with this for many years too, heres what i think i learned,
-increase muscle to fat ratio. build muscles, work out, full body, not just cardio. dont worry, strength training burns calories too. what matters is overall calorie deficit at the end of the day, not necessarily burning fats by doing cardio. work out the core (lower back, butt, abs, obliques, hips) these muscles make everything else stronger
-eat lotsa protein. it keeps you more full, it builds muscle, it minimizes muscle loss when you cut calories. in fact, its when u cut calories that eating more protein becomes really important.
-be aware of food allergies. food can accumulate in you to cause allergies that give the symptom of 'craving'. yes. ive developed allergy to WHEAT which i believe is common. sometimes craving is not your own lack of willpower, its that there's a physical addiction that works the same way as heroine. i stopped eating wheat for about 2+ weeks and the craving went away.
-exercise to get stronger and more fit, not to do the same thing. the body will adapt to what you do and eventually, you burn less and less calories doing the same level of working out.