Agree with all above. Also at this age, milk is not really a "meal" ie/ drank in large quantities, but a drink that goes along with meals and snacks. So to get that 20 oz per day, if you give it to him twice as 10 oz drinks, then that is two meals. But if he has a small cup with 3-4 oz in the morning, a bit with his snack, some at lunch, some with dinner, etc etc then he still gets his milk intake in, but it is not filling him and replacing a meal. It encourages more to eat and less to drink to fill him up.
At that age, we did a lot of "encouraging" to eat and I wish we had not. It takes the control away from him and puts someone else to try to teach him how it is done instead of figuring it out. It was well after my DS turned 3yo before we realised this

If I could go back in time, at 18 months I would have just put his food in front of him and let him do with it what he wanted...eat, play, smush, not eat, whatever. And not comment, not say much about it, just allow him to figure it out. Regular meals with regular snacks, and allow him the choice. The older they are when you turn to this approach the harder it is for them to 'get it' IMO. But if you start it now when he is younger, it will take him a lot less time to decide to eat until it fills him up. As you said he does not know that eating fills him up and you have no idea when HE feels full...you are just guessing. He needs to eat on his own and decide on his own what that feeling of "full" is and how he got there on his own.