With breakfast do you have enough time in the morning to try a later breakfast (sorry don't know if you are SAHM or if you have to get out on time in the morning etc)? Mine has always had milk first in the morning and even that cannot be when he first wakes, it is at least 30 mins after waking, then won't take a proper breakfast until about an hour after the milk, if I gave him either too soon he takes almost nothing.
A few things I can think of
- are the portion sizes suitable? If the fruit and yoghurt portions are big enough to fill her up she could reject the main meal knowing fruit and yoghurt are coming and that these foods will satisfy her. If you try very small portion sizes she may build more of an appetite for the next meal, even one or two bites of her main meal without spitting out would be a step in the right direction and move on to a very small portion of fruit and yoghurt before the spitting/throwing starts. ie avoid the behaviour by stopping offering food before the behaviour starts.
- are you asking if she is hungry before you begin the meal? Is she communicative either verbally or in body language that she is willing to eat?
- hand her only one piece of food, get in to stop the spitting/throwing whilst it takes place to stop it happening. If you sit right by her, can you grab her plate and get it under the food that is being dropped/spat to the floor as it leaves her hand/mouth. I found this useful to break the cycle of food getting to the floor. I then acted as though DS was 'clearing up' and said "Clear up, thank you, that's right food you have finished with goes on the plate for clear up." Then take the plate away. For the spitting maybe catch on the plate and say "If you don't like the food you can spit it onto your plate. Looks like you don't want this. OK, how about a drink of water?" remove the plate and give her a drink instead. Move on to the next part of the meal (fruit).
- use a firm, instructional voice. If it's really bad and continuing as long as this perhaps you need to stop giving second chances and just get her out of her chair straight away. If she's indicated she is hungry but then throw the food perhaps you need to spend a few days being quite firm in your expectations. Don't have too high expectations for a tidy dinner, but equally make it clear "food is for eating. If you don't want it, clear up please" (or if you don't want it say you are finished if she has a word or sign for this) and be really firm in your tone, low, calm and serious (as opposed to shrill, frustrated or shouting). I would take her out of her chair at the first throw rather than giving a second chance and then moving on to fruit. You don't need to be angry and there doesn't need to be any punishment but rather put a stop to what is happening and just move on to your next activity.
- if there are certain foods that make you more frustrated (such as yoghurt being painted on the table) either find a way to accept this behaviour (such as see it as fine motor practice, the beginnings of drawing and writing for instance) and marvel at it, or stop serving those foods for now. It's really pointless giving her foods that are driving you up the wall. Cheese may be cleaner than yoghurt and still give her the dairy she needs.
- if you are picking up dropped/spat food during the meal I would stop. Leave it there until the meal is finished and she is out of the room. Show no reaction, maybe pretend you haven't noticed.
- at one time mine held out for fruit. We had an uncomfortable couple of days where he'd ask for dried fruit by going to the cupboard where they are kept and I refused him. I offered another food instead (cracker, bread stick, piece of cheese, vegetable etc) and when he screamed and howled I sat on the floor and offered him a cuddle. Right through I told him in a sympathetic voice "I know you want sultanas, I know, they are very tasty, yes I hear you want them. Mummy has to take care of DS, that's my job, I have to make sure you have a balanced diet, I can't let you have just fruit, you need other foods for your body to grow strong so you can play and have fun..." etc After 2 or 3 days he was eating a decent range of foods again and no more fits about fruit.
- try serving a very small portion of fruit and yoghurt alongside the main meal. This slightly contradicts the tip to give only once piece of food, but it also avoids the idea of holding out for the good stuff. If she knows she is getting the fruit/yoghurt anyway, she might be more inclined to swallow a bit of her main course. She may like to dip her main course in the yoghurt, or she may have more of an appetite after a small piece of fruit. Another phase here I put a few sultanas on DS's plate so he could begin with those as a bit of an appetizer.
Hope something here might help or trigger an idea for you. If I think of anything else I'll pop back.