Firstly, stop worrying. He is a baby. He has plenty of time to learn to eat a variety of food. He won't starve, even if you think he will. He won't. I had one fussy eater and one who would literally eat the table if you left him unattended. I did nothing differently. They both now eat health balanced diet and nobody is dead.
There is so much truth in the concept that you have to try a child on a particular food 17 times before they accept it. It is worth remembering that before you get stressed about what he isn't eating.
I used to find that the most stressful thing was spending ages cooking them something and then them not touching it. So I would say batch cook, put it in the freezer and defrost small portions. That way, very little stress. Then try him again and again on the same food until he suddenly realises that its here to stay so he might as well give it a try. Even if you just put it on his plate, it is desensitizing him to it. The biggest thing is to create an environment where you are not getting stressed because he will learn that meals times mean stress. Whatever it takes to make it an enjoyable experience for you all, do that. Its not a race. Just because he won't eat something now doesn't mean he will never eat it. Surely he's still having milk, which contains a lot of the nutrients he needs.
Also don't stress if he throws it. They are learning about gravity at this age, dropping things on eth floor is perfectly normal, healthy and necessary. If it bothers yo, put him on the floor on a plastic mat, and outside in the sun if it helps with the cleaning up afterwards.
Seriously, its not worth your stress. Your responsibility is only to provide a healthy meal, its his choice whether he wants to eat it or not. If not, remove it and remove him from the table. He'll be hungrier when its the next meal time. He WILL NOT DIE using this approach. He might get slightly peckish.