Alecia, it sounds as though your son is basically healthy in spite of his limited diet. Don't worry about it too much right now.
Theresa C. has given you some excellent pointers re: cutting his milk to skim. Although he may look and act healthy, the excess fats in whole milk can create a dietary train wreck in not checked. Years ago, when my son was a baby, he developed a few food preferences and peculiarities, too. I was fortunate to have a very wise pediatrician who told me, "Don't worry about it. The human body knows its needs better than the human brain. His body craves foods right now that provide some dietary need. His body will eventually begin to demand various other nutrients and he will begin to eat new foods to satisfy that need."
It's sort of like when you are hungry but don't know what for and you eat several different things trying to satisfy that hunger. It's your body telling you it needs something it's not getting.
You do want to encourage your son to try new foods, though. Offer him a new food and, as suggested, tell him to eat one or two bites of the new food before he gets his mac and cheese. Since green beans is his lone vegetable, you might want to start with the veggie menu. Whatever you do, don't try to force him to eat different foods. You can create a veritable phobia about a particular food and he will never eat it.
Do you make his waffles fresh or are they toaster waffles? If you don't make them yourself, you might want to consider doing so. It's almost as fast as sticking them in the toaster and they are far more healthful. With home made waffles, you can make them from whole grain wheat flour or a blend of regular and whole grain. You can add blueberries or chopped strawberries or cherries to the mix as an easy way to add some variety to his diet. (Don't be surprised (or distressed) if he picks them out, though.) You say he eats bread. Consider making fresh bread and letting him help. This way, if he decides he likes the product of his own kitchen, you can start sneaking those pureed foods into the bread.
Actually, he seems to have settled on a fairly well-rounded group of foods. You can mix up the type of hot dogs - beef/chicken/turkey/pork/mixed beef&pork - and he's getting pretty much the same dietary meats that most people do. He's got a healthy dairy consumption, obviously! The waffles are giving him his grain. And, if you can encourage him to eat more green beans, he's really got a pretty well-rounded diet!
You say he is growing well and is normal weight. That, alone, is not the whole picture, which you obviously know or you would not be asking about his diet. My only concern would be a lack of adequate nutrients and fiber in his diet. Talk to your doctor about adding a vitamin supplement to his regimen. If his bowel movements are regular and daily don't worry about a fiber additive but, if not, buy a powdered fiber supplement to add to the waffle and bread mix .
Bottom line: Chances are, in a few months or a year or so he will begin expanding his diet on his own.
His crying fits are another concern. Make him understand that, crying is not the way to get what he wants or he will utilize that modus operandi whenever he doesn't get his way and you will have to deal with fits of crying over everything. If he wants milk at 2:45 p.m and you are not read to give it to him, tell him "Not yet." If he starts crying, tell him he must stop crying or he cannot have his milk. Then show him a clock and point to 3:00 p.m. Tell him that is when he may have his milk. This gives him a specific target to focus on. Tell him to come to you and let you know when the hands on the clock are in the right place. This also can be a great tool in teaching him to tell time so you win twice!
Whenever he asks for milk, other than at meal time, give him a time on the clock, a few minutes into the future, and tell him that is when he may have his milk. Gradually, you may be able to wean him of his craving for milk. But, in the meantime, chances are there is something his body is needing which the milk provides.
Last time: Don't worry. He'll be fine. He's got you to guide him.