There may be several reasons why children vomit at night, including overeating or catching a cold, as well as underdeveloped gastrointestinal function.
The baby has been having trouble sleeping at night and is experiencing digestive issues, such as eating and then having the same things come out. It could be due to a calcium deficiency or digestive problems. Consider supplementing with calcium and taking probiotics to regulate the gut flora.