Well, T. I think Nola hit the nail on the head. Look I know some folks don't watch or care to watch the super nanny show but I have watched and to be honest with you she's got some great ideas and they aren't any different then a counselor would give you. All I can say is you are dealing with a child and don't say they should be little adults because their little under developed minds can't and they aren't little adults. I have 3 boys when trying to train the youngest not to toss food on the floor and when it happens the other child laughs I say " not fun time" then I limit the food I give the youngest if I have to sit and only give one piece at a time well then (welcome to motherhood). I never gave my kids more then a few pieces of food at a time because I didn't want to overwhelm and I didn't want to pick it up off the floor. I think it's up to a mom or dad, babysitter what have you to sit and supervise at the table lunch, etc. If it gets to out of had I fed my kids at different times like 30 mins apart. There's no real answer or fix it's just how you want to deal with it however taking food totally away and not letting them eat is a no no in my book that's punishment but the wrong kind. I also don't think hitting a child is the best idea at the table either eating time should not be somewhere that has a linger of fear hanging over it. This will pass I have an 8,6 and 4 yr old they are past it, it doesn't happen so it does stop. My husband would put the youngest on his lap when it would happen if they wouldn't stop and piece feed him and tell him "food goes in tummy not on floor not funny".
Sorry, hope that helps take what you want from it.