If he isn't eating his breakfast perhaps he really is getting too much during the night.
Had something similar at 6 months with DD. She would have her dream feed at 10:30pm and then come up for another feed at around 5am. But then refuse breakfast or another milk feed until between 9 and 10am. I started offering water at her 5am waking.
The first time I was sure she would scream the house down but she didn't. Just had a taste of the water in the bottle and tried to get to the boob (which I made clear wasn't going to be offered). She then sat on my lap for a couple of minutes before snuggling into me and going back to sleep.
I offered the water at 5am for 2 more nights and then she didn't wake again after that. And she suddenly became very keen on 7am breastfeed and solids breakfast.
Within another week she was breastfeeding better during the day (less distracted) and with taking a better solids breakfast (3 meals by then) she dropped her 10:30pm dreamfeed herself. I would go in, pick her up and put her to the boob but she would push it away and go back to sleep.
Whether any of this was truely down to GF or just because my DD suited this, I don't know.
I know lots of people who used GF for their first baby and it worked a treat but had no effect on their second or subsequent babies.
You could try the water at 5am and see if your DS is happy to go back to sleep for a couple of hours. If that works then do the same at 2am until he stops waking.
Once he goes from dreamfeed till breakfast and hopefully he will suddenly get into having breakfast and may soon drop the dreamfeed himself.
I think start with offering the water at the 5am as its closest to breakfast so not too long to wait. I think if you start with 2am, you may have a revolution on your hands.
FWIW, my DD had been refusing her breakfast feed until 9/10am for 2 months by the time I finally cottened on to her not needing the 5am feed she was asking for. So you're not doing anything wrong.
HTH