The thing is, it's really NOT a bad habit, and you absolutely haven't done anything wrong.
This is why all of the stuff about routines and such is unhelpful - because it makes mothers feel like they are getting it wrong when what you are doing is perfect - it's a response to his behaviour which is exactly what he needs right now. It's really fine to trust your instincts and do what feels right, not worry about what everyone else is doing. Routines work for some babies but not all. It is actually okay for them to wake every hour - I know that it doesn't seem right but that's because you're looking at it from the point of view of adult sleep. Really he's just waking every sleep cycle which is frustrating but not unhealthy. (Random thought - have you checked he's warm enough at night? I know DS used to wake up constantly when I put him in the recommended bed clothes but this was too cold for him. If I co-slept so he had my body heat or wrapped him slightly warmer, he'd sleep longer. You can check they aren't overheating by putting a finger down the back of their collar. If it's sweaty they are too hot, if it feels cool, too cold.)
Okay - so it would be more convenient if he would nap without your input. But I'm guessing that you didn't have a baby for the convenience factor! Lots of babies are really like that and it's not anything you have done which has caused it. Some babies are happy to have naps alone, others are not. Enjoy the cuddles. He won't want to sleep on you for ever. And yes a sling can absolutely help, if you're finding that you want to get up and do stuff while he's sleeping (personally, I would take the excuse for a sit down!) Another option which worked for me was having naps in bed together because it let me doze a bit from the broken nights and he seemed to settle okay as long as I was there.
So again at night you don't need to worry that habits are more ingrained by 6 months because him waking up isn't a habit as such. He's waking at night to feed likely, yes, partly because he's used to it for comfort (and you could try a dummy as suggested if this helps) but also partly because he needs the milk, he's at a growth spurt time and it's also a time they tend to be distracted when sleeping during the day. And then he'll be waking looking for reassurance that you're still around, too. All of these things will naturally reduce with age and you don't need to worry that he's doing it on purpose. If you think about it, when you're asleep, you're asleep. You wouldn't wake up just because you thought something nice might happen (how would you know? You'd be asleep.)
I'd be looking at the longest stretch of sleep and taking that as a marker, trying to shift that to the best time for you. You'll get the biggest sense of "things are improving!" when you work that out.
I think you'd like the book The No Cry Sleep Solution.