Take him to the vet, recently my ol' gal did that. She had an ulcer-like mass growing inside her stomach wall. She got antibiotics, pain meds, and lots of TLC! She's currently still on antibiotics, but completely changed from a shy, grumpy cat to a playful, and outgoing cat. It's nice to see her happy & healthy! The mass was probably infection, because the antibiotics completely reduced it. Get him a check-up and tell the vet about it! Your vet will help you get things sorted out, and if the vet cares about you as a client and your cat as his patient, he'll help you map out the antibiotic scheduling, costs, and maybe even a budget! My vet even helped me pay for the medications when I told him I was short on money due to just paying my rent, bills, etc! Just take him in and let the professionals do their work instead of lounging at your computer and asking random stranger, 'cause truth is: you probably won't find any credible medical explanations here.
The blood in the vomit could be an indication of ulcers, lack of proper blood clotting, exposure to poisonous plants/pesticides or consumption of certain medications that reduces the count of blood platelets. I would recommend you to take your cat to a vet for a full diagnosis.