He shouldn't need to eat at night at all and certainly not more than once, which seems to be your thoughts as well. So I do agree that you need to eliminate the other wakings, if not all of them. To start, I would choose one time a night that you're willing to feed. For example, anytime he wakes up before 2:00 a.m., do not feed him. The first time he wakes up after 2:00, feed him. Then, don't feed him again until at least 6 or 7:00 a.m.
When he wakes up before 2:00, your husband needs to be the one to put him back to bed. Yes, I understand that if your husband works it can be hard for him to get up at night (not sure if that's true for you but it's an argument I hear often), but your baby won't expect to nurse if he's the one that goes in when he cries. So, anytime you don't intend to feed, make your husband get him. Do Not Cave In to feeding him when you weren't planning to.
Also, don't ever have him sleep in your bed anymore. Because you do it sometimes, he knows that enough crying will get him there. If you cut that off completely, he'll figure it out within a week or two that no amount of crying will get him back in your bed - he sleeps alone in his crib and that's that.
Along with that, don't nurse him in your bed. Choose another spot - a glider/rocker, the couch, etc where it isn't as cozy for him. I know it'll be harder on you to have to get up, but it will teach him that your bed isn't for nursing and that he doesn't get to nurse while sleeping.
Finally, if he doesn't have a lovey of some kind (blanket, teddy bear, etc), get him one now. Having something nice to snuggle with in bed may help soothe him as well. Both of my kids had their little blankets by this age (small ones, not big enough to smother).
I feel your pain. good luck!!