Everyone melts down at Disney, adults and kids alike. Ever see some jerk trying to push through a crowd, as if they are the ONLY ONE tired and wanting to get to the exit? Whatevz. Judgers are going to judge, you can't control that, you can just be the awesome mom that you are.
Step 1 is talking to your son, clear consequences: Home will be far away at Disney, so, if you do XXXX, we will take some time out in a quiet area (every park has little spots of less noise/people to allow for some chill out time, scope those out ahead of time). If you do not get it together, we will go to the exit of the park and sit on the benches. If you're still struggling, we will go back to our room and relax and try again later.
Going back to your room won't be the worst thing if he's in need of a break. Even I, as an adult, struggle when I spend more than 4 hours or so in the parks. Too much noise, activity and crowd energy, I always need a break. A break at Disney isn't a sign of weakness, or a punishment really, it's just an admission that humans have limits, and every human has different limits.
Don't think about any "waste of money" or time, think about setting your son up for success and enjoying every minute of things, not every single thing. I have always toured with the idea of enjoying what we do the fullest, and that includes doing less things, and that's okay. The one time I pushed my kids past their point of reasonable was in AK, I wanted to get the whole park done in one day, and we stayed too long. I was rewarded with crying twins at the bus stop on the way back to the resort. Lesson learned.