Just to add to the chorus of: "it will pass". If he was a good eater before, he will go back to being a good eater eventually I think.
Both my DCs have always been good eaters, quite adventurous etc. But in my experience, there is a "control what I eat" stage around 18 months, and then again around 3. Suddenly ALL they want is bread and butter; then NO bread at all, only cheese; next day it's ONLY raspberries etc.
I try to stay calm, but I totally empathise with you, it's not easy and so frustrating if they don't eat what you have made.
The key, in the long run, is to stay calm and relaxed about the whole thing. Food is an enjoyable experience, fun even; so I try to keep it that way.*
Every other day or so, I ask them what they want for dinner. It's usually cornflakes or porridge. If I give them the choice, I then provide what they have asked for. So cornflakes it is!
I think it gives them a sense of control. In my experience, they are then more likely to eat whatever you provide for them the next day.
*full disclosure, I do sometimes "bribe" with pudding or TV. I know you shouldn't but when you're desperate... Everything is ok if it doesn't become the norm.