Frustration Station

I'm struggling with self esteem like I never have before. When I was single a couple years ago and didn't have a car I walked several miles a day. I also was a bartender and server so my lifestyle was pretty active. I NEVER did intense cardio, I ate horribly (huge amounts of carbs, sugars, I drank lots of beer and wine, no vitamins etc). But I had a near perfect body, as far as I am concerned: bmi was 19-21. I met my boyfriend and he started driving me around and then I got a car and a house with a back yard so I didn't walk my dogs as much. Kept my job, but it was so slow I was just sitting around mostly. So, I started gaining weight. Next thing you know I've got 20 pounds on me within about 8 or 9 months. I went vegan and quit drinking for 30 days and I lost 18 pounds in 2 months without working out. After 5 months of being strict vegan I started to hate the constant ridicule for my dietary choices. Even though I loved being vegan, most of the people in my life wouldnt leave me alone and treated me like I was a hassle. Even my employers would harass me everytime I ate anything. I got some praise and encouragement, but when my boyfriend and his family got on me because they didn't know what to make for me etc, I decided to give up. I ate a lot healthier for the most part after quitting the vegan lifestyle, but bad habits crept back up because of how my friends and family eat. So here I am 9 months later with 30 pounds on me. Trying to get my sh*t together I am doing cardio 4 days a week yoga/stretching every day, 1600 calories a day and very carefully analyzing everything I eat. I'm taking a multivitamin to help with nutrition as well. I've been consistent for a week and I'm gaining weight. Sorry to complain so much, but I'm just so frustrated and desperately need advice/encouragement.

Side note: My doctor is not even concerned about my weight gain, but she is worried about me doing intense cardio because I have severe asthma. I also have fairly shi**y knees from 10 years of restaurant industry so it limits some things I can do. Hasn't stopped me from stair sprints, though I max out after 7 minutes.