When we overeat, it is rarely because we are hungry. Instead, we eat to fulfill some other need. Maybe you eat out of boredom or stress, or to comfort yourself... whatever the reason, you are not eating excessive amounts because "the" body needs it... you are over eating because your emotional self does.
Next time you feel the desire to overeat, ask yourself, "What is best for THE body?"
Sometimes changing your mindset is the most important habit :)