Because I have never been able to break this habit, I have curtailed it a bit. I generally don't snack in the daytime (usually because I'm not hungry). Instead of having something high calorie and high protein, I usually limit it to a few cookies or a bowl of cereal. And I string out the time it takes me to eat my snack by reading, writing or watching my goldfish in order to distract me from my belly.
Do You Gain Weight Or Not?
One of the reasons that eating late at night is discouraged is because it it generally believed that you gain weight faster when you eat and immediately sleep rather than eat and go throughout your day, burning those calories. However, this might not necessarily be true. (But if believing eating right before bed will make you fat is enough to stop you eating before bed, skip the next paragraph!)
A 2006 study done by the Oregon Health & Science University studied the weight gain of 47 female monkeys. Eating at night didn't cause any significant weight gain over eating during the day. Giving hysterectomies to 19 of the monkeys didn't make a difference, either. Apparently, you need more than just a day to burn off calories consumed.
Contrast this with a 2005 study done on college students who regularly snacked from 8pm to 4am. Conducted by The American College of Sports medicine, 212 college students described as "sedentary" gained at least 1.1 pounds when they snacked at night. And another study released in 2009 also linked eating before sleep to weight gain – well, for mice, at least.
Your Sleep Is Disrupted
But the big reason not to snack right before bed is that the digestion often interrupts your sleep. This can be because you have to go to the bathroom, or that you get heartburn after lying down too soon after eating, or you are snacking with caffeine and sugar that can keep you awake.
You also want to avoid alcohol a few hours before bed, because not only does that pack on the pounds (no matter what time of day you drink it) but it can also make you have irregular sleep patterns.
When you don't get enough sleep, you get stressed. And when you get stressed, your body puts out a chemical called cortisol that gets your body ready to run for its life or fight for survival. When cortisol is released, it tells the body to stop certain functions so you can have the most energy diverted to fighting or fleeing. One of these is digestion.
So, you can't digest your food as thoroughly when you're chronically stressed with sleepiness as when you have enough sleep. Because stress can make you fat, it can be extrapolated that eating a lot right before bed can make you not only tired and stressed, but fat.