I would try smaller amounts and slow him down with his eating. Does it just look like he is bringing only the food back up? We had this problem with our Lab when he was young and the breeder told us to float his food in water. It slows him down and also lowers the amount of food he will gorge on. We don't have to do it anymore now that he is 8 but when he was younger, it was the only way to keep him from choking on his food. Regardless, your puppy should be eating more than once in the day. Not sure how old he is but it is better to make it 3 small meals instead of one large one. Also, feed him by the handful to help slow him down and to also prevent food aggression/possessiveness. Hope he feels better soon but if he continues to throw up, get him checked by your vet.