Are you still nursing? Does he wake up to eat, or just to be held? Does he self-soothe yet?
My little boy, now 3, used to wake up to eat, so when I got up to nurse him, I would decrease the feeding time by one minute every night. (If using a bottle, decrease by one ounce every night.)
Once the problem of eating during the night is fixed, you can tackle sleeping! We used the "Ferber Method," which some critics thought was too harsh, but worked well for us, and was, to me, much better than letting him cry all night. If he's not self-soothing yet, don't bother, because it won't work. (Our son sucked on 2 fingers.)
Basically, every night, we let him cry 5 minutes longer every time he woke up. On night #1, I let him cry 5 min, then went in his room without picking him up, and rested my hand on his back until he stopped. The next time he cried, I let him cry for 10 minutes, then 15 minutes. I stayed at 15 minute intervals for the rest of the night. We were up most of the night, and it sucked. The next night, I let him cry for 10, 15, then 20 minutes. Things went much better, and my 20 minute intervals only went on for about an hour. The next night, I started at a 15-min interval, and only had to do that one.
I guess it usually takes four days. If you fall off the wagon during teething, illness, or travel, you have to re-train. Dr. Ferber recommended starting with the 20-minute interval. The key is consistancy, and the 5-minute increments are not set in stone. Some people go in 1 or 2 minute increments.
This worked really well for us, as long as we were consistent. There are a lot of books out there, and if you don't like this way, you will definately be able to find one that matches your philosophy more closely.
One more thing, all the books I read stressed having a bed-time routine, and keeping it the same for naps and night-time. We read a story and sang 2 songs. Our son is 3, and we now read 2 stories, sing 2 songs, and he turns on his night light. Good luck!