Hugs, does he do it at every meal? Or just one ie dinner?
Do you think it could be developmental, or a cry for attention ie if your ignoring him (not on purpose) while eating together? Z throws food when he has too much on his plate too
What works for us typically is the first throw I would take that piece away (dirty now) and calmly but firmly say 'we don't throw food Zac, are you done? ' I keep it simple so he understands. Sometimes he will say 'done' in which case i remove the food. I then say 'when you finish you just tell mummy your done.' If he says 'no' i say 'ok, if you throw it again I will assume yor done.' if he keeps throwing I remove what isn't in his hand. If he cries for it, I give him 1 piece at a time.
Personally I'm not a fan of trying to control food, but working with them to teach desirable behaviour around eating is more effective - for us anyway. The reality is though, it will take time and it is in part developmental. FWIW Now we rarely have thrown food, but it did take months, ignoring it kind of works...but only for a period of time. What will work long term is good modeling and , e will get there Hun