Most people can tell when they are really hungry ("I'd eat my shoe if it were food") or really full ("I'm uncomfortably stuffed"). As with pretty much anything in life, extremes are not ideal. Your body would much prefer that you respond to signals for hunger and fullness before it reached the extreme. However, to do this requires attunement with your body signals.
In my clinical practice I often use the hunger scale to help clients identify the subtleties and progression of hunger and fullness. There are many versions of this available, and I encourage clients to create their own based on their internal experience of what each stage feels like.
I recommend trying to stay between a 3-7, which for most people shakes out to be a meal or snack every 3-4 hours or so. By eating when you are moderately hungry it's much easier to stop when you are at a place of comfortable satiety because your body trusts it will have the opportunity to eat again in a few hours. Thus, there's no need to eat as much as you possibly can now. Waiting until you're at a 0-1 is a total setup to eat a lot of food quickly and end up at a 9-10.
0 – Starving, your body is completely out of fuel
1 – So hungry you'd eat just about anything
2 – Strong hunger, thoughts preoccupied with food
3 – Moderately hungry, urge to eat is strong
4 – Stomach feels nearly empty, anticipate hunger will happen soon
5 – Neutral, neither hungry nor full
6 – No longer hungry, but still want to eat more
7 – Pleasantly satiated, almost full
8 – Full
9 – Very full, getting uncomfortable
10 – Stuffed, very uncomfortable