I'm so sorry to hear that your cat has been suffering with this vomiting problem for the past year! I would suggest you have him evaluated by another well-recommended feline-only (if possible) vet, in your area. Your current vet certainly should have been able to provide you with some more in-depth answers, besides a hairball theory. Even if she thought there WAS a hairball problem, she should have prescribed some hairball remedy to see if that would alleviate the situation for him.
You would know if he had intestinal parasites if he were throwing them up (roundworms look like spaghetti) and/or they were coming out in his stool. Tapeworm segments (live) look like grains of uncooked white rice and would be present around his anus and/or in his stool. Dead/dried up ones look like sesame seeds; smaller and more yellowish in color. There are other intestinal parasites which are microscopic (giardia/coccidia) and these can only be detected by bringing a fresh stool sample to the vet for analysis (a fecal analysis should be done in any case, to rule out intestinal parasites). http://www.sniksnak.com/cathealth/worms.html
Frequent vomiting may be caused by various factors. Food allergies are a possibility if his current food contains any 'fillers' like corn, corn gluten, artificial preservatives and/or flavors and colors, as these are common allergens to cats. The fact that you changed his food quite a few times, trying to pinpoint the source of the problem, may have contributed to it, unknowingly. Some premium cat foods which contain no fillers or artifical preservatives are Wellness, Nutro, Felidae, Newman's Own Organic and Natural Balance. Whenever you change your cat's food, always do it gradually; add a little of the new food to the existing one, and then increase the percentage of new, while decreasing the percentage of 'old', a little bit each day; you should be complete changed over in about 7-10 days.
It's possible that your boy doesn't actually have a hairball, but some fur 'tickling' his throat (ingested during self-grooming) is causing him to gag, trying to get rid of this uncomfortable feeling, and this is a cause for the vomiting. Hairball remedies like Laxatone and Petromalt, available at stores like Petsmart, might make a difference if given daily. Follow dosing directions on the tube. Also, comb/brush your cat a few times daily, to remove any excess 'dead' fur, so he ingests less during grooming.
Acid reflux is another possibility, especially if he doesn't have dry food available at all times. An empty stomach produces acid, acid produces nausea, and when the cat eats, he vomits shortly thereafter. Even if he does have dry food available at all times, a cat can also develop an acid reflux problem, just like humans. Ask the new vet if a 1/4 to 1 tablet of Pepcid AC, daily, might help alleviate the problem.
Sometimes, when a cat eats too quickly, this can also cause vomiting, so to slow down his eating, for dry food, place a clean, unused ping-pong or golf ball in the middle of the bowl, and for canned food, serve on a flat plate and mash it down with a fork so it's not mounded up in the middle. Also, raise his food/water dishes up to chest level, as this aids digestion.
Stress can also be a contributing factor in vomiting; cats don't display stress in the same way as humans, so it often comes out in symptoms like you've described. If there have been any changes in his environment recently (new carpet, new furniture, new people, etc.) or your hours away from home have changed, this can cause stress/anxiety. A product called Feliway helps to calm stressed cats. It's a cat appeasing pheromone available in both spray and plug-in diffuser. The diffuser resembles a plug-in air freshener, but has no scent to humans. Feliway is available in stores like Petsmart and also may be ordered online. For more information: www.catfaeries.com/feliway.html
Vomiting may also be caused by a viral, fungal or bacterial infection in his system which could be treated with antibiotics specific to the problem.
If your cat is a 'senior' (6 or over), the vomiting and recent weight loss could be attributed to several illnesses/conditions older cats are more prone to develop, like diabetes, hyperthyroidism and renal (kidney) issues.
Even if he's a youngster, a full blood workup would be helpful at this time to help determine the cause of the vomiting and weightloss.
There are many other reasons he may be losing weight and vomiting, but a thorough evaluation, including the blood workup, fecal analysis and also a urinalysis, will certainly provide more information to the new vet you choose.
I hope this problem is resolved very soon and your cat is doing much better. Please keep me updated on his condition and let me know the vet's findings. Thanks!