That's ridiculous about the idea that they have to smell. No, they don't have to smell. People that can't keep their house clean with a cat, can't keep their house clean without a cat. People are gross. Cats are not gross. People are dirty and many people are worse than pigs. People tell me all the time they have no idea I have a cat until they see him. I have 4 cats. I keep the box clean most of the time. If I let the litter go too long, I open the windows, turn on the attic fan, clean the box and a few minutes later the house smells pretty again. I use essential oils to help with household odor. There are many other stinky things in a house...like kids! You should smell my daughters room if she and 2-3 of her friends play for about 30 minutes. They get excited and put off odors that are way worse than any cat box I've ever smelled!
What about a man that has ate garlic and onions for lunch? There is nothing worse than the smell a man puts off through his nose, mouth and even through his pores when he's been eating certain foods.
SHEETS...that's a big pet peeve of mine. People do not wash their sheets enough.
I have entered a lot of peoples homes too, delivering frozen foods and delivering pizza and even delivering daycare kids to people. Other peoples smells are often gross with or without pets.
As for the boyfriend...depends on how much he really hates them. I've seen lots of people end up liking cats that didn't before. Most cats of that age will stay away from anyone that doesn't like them. As long as boyfriend won't try and be mean to the cat, go for it.
Vet bills at this age are minimal. But I'd put 40 bucks per month away just in case the cat gets really sick. If you can sock away 40 dollars per month, you'll have a nice little savings account for some day in the future when you haven't spent it.
Eczema will only get worse with a pet if it's caused by the pet. Since your son already has it, it's unlikely that it's caused by a cat unless he is in a place like daycare or such where he's been allergic all this time.