Yeah try to wait 1.5-2 hours after eating to workout. Also, when you puke it's because all the blood leaves your ab muscles and they become weak and there's nothing left to brace your internal organs, such as your stomach. Do you ever train your core? Like do you ever train abs first thing in a workout? That may make things worse. Do abs at the end if you do them, and maybe limit them to once or twice a week. After all they are muscles and need time to heal and grow as well.
Just some thoughts. Also another reason you want your food to be fully digested is so your blood is available to go to your muscles, and not focused on helping with digestion. Otherwise you're workouts can suffer significantly.