I choose to replace shakes with real food. Much more yummy.
You name a shake and I'll name a portion of fish I'd rather eat with all the same (and more) health benefits. Heck, eat an egg or two instead.
I would only use a shake if I were in a real pinch. Like if I were really hungry before a workout or a run and could not eat anything. So I do keep shakes for emergencies but tend not to use them.
I know you're supposed to eat regularly throughout the day
Not me. I have been on a business trip this last week and have eaten the most massive breakfasts you can imagine while skipping lunch and dinner. And I have actually lost weight. I do exercise a lot, however, and try to focus on getting a lot of protein in my breakfast while limiting fat and sugar. So I eat a lot of fish and eggs (but also have ice cream, honey and bread rolls) for breakfast. I'd love to know what you are eating for dinner. From my experience it would be hard to gain on just one meal a day without snacking. With fast food every day it might be possible, but otherwise it would be tough. And I have been gorging for that one single meal.