You son sounds very much like my daughter did at that age. She would throw up 1/2 a feeding or more after every feeding. Sometimes it was instantly and sometimes it took 30 minutes. Sitting her up didn't help at all. I had to feed her every 1 - 1/2 hours. She was always gaining weight, but an ounce or less a week isn't what I consider good weight gain. Her pediatrician didn't agree. As she got older it got worse and became projectile vomiting. She turned out to have sever GERD, but they generally won't medicate for that until they are six months old. My daughter was an extreme case having been diagnosed with esinophillic esophagitis. She is allergic to milk and soy and it turned that she was allergic to breast milk. If you are nursing, eliminate dairy from your diet to see if there is an improvement. You can get calcium and vitamin through foods like broccoli, Total raisin bran, honey nut cheerios milk 'n cereal bars, spinach (cooked), canned salmon, tofu, wonder kids bread, kix cereal, sunflower seeds, white beans, almonds, flour tortillas and supplements. If you see an improvement, then stick with the non-dairy diet. Usually if it is baked in or cooked in it isn't as much of a problem. If your baby is still having trouble, you'll have to go to a hyper-allergenic formula like Neutramigen or Alimenten.
One thing I learned the hard way is how to communicate with your doctor. If your child is still spitting up after 20 minutes of feeding, it is throwing up. They view this very differently. If your baby spits up and can't stop that reflux, tell your doctor that. We went 8 months with out pediatrician treating us like lunatics and pacifying us because I wasn't speaking in their language. I had to seek out specialists on my own because our pediatrician didn't think anything was wrong with our daughter. She is generally healthy now, but has some other health issues caused by not being diagnosed properly at a younger age. She is very happy! That was always a problem too. Apparently doctors think that happy babies aren't sick. Her weight gain is still very slow. She's been in the 3rd-10th percentile all her life (she is 3 now). Whatever you do, don't panic. All you probably need to do is modify your diet or the baby's slightly. Also, try to let your son sleep in his infant carrier or a bouncer seat inside the crib. That really helps with reflux babies. Good luck!