Not eating after 7 is nonsense, a pre bed meal is very beneficial to thwart off catabolism/ preserve lean mass.
If your trying to lose weight, I wouldn't eat say a baked potato before bed, but a slow digesting protein (animal source,
casein/cottage cheese) a bit of fat, a table spoon of natty Peanut Butter, and I bit of fibrous vegetables. Would be great, just make sure you work them in to your overall calories for the day.
as far as eating every 2-3 hours, you most likely don't have to be so anal about it, 5-6 meals is optimal, but beyond 6 you probably won't see much benefit.