We had to deal with this sometime around a year or so with my DS. I too rocked him to sleep every nap and bed. In fact, he still wants to be rocked to sleep from time to time and he's 2.5! But now I actually enjoy it because my DD doesn't like to be rocked at all (and I sure miss it!). In any case, we did a slow wean on the sleep. He too was one that could not be put down until dead asleep and he took over 20 mins everytime! So I slowly started pushing back the time every 3 nights. I'd rock for 15 mins, then 10, then 5, then just a few minutes and softly whisper each time I laid him down that it was ok, I was still here. I never left his room until he was asleep, I stayed by his crib with my hand on him, sitting in a chair. I did do several nights of PU/PD until he started to realize I was going to stay right there by him but not rock him any more than the couple of minutes. After this took effect, I started slowly moving my chair farther away from the crib towards the door. Eventually we were home free.
Naps were a different story. They were easier for us, which it doesn't sound like in your case. I would read him a book and rock him for a few minutes. Then I eventually ended up putting him in the crib with a few little hard books. He fussed some beforehand, then would start reading. Sometimes he fussed after he was done, but I never went to him while he was fussing - only if he was crying. Eventually he learned to read himself to sleep. If you're not being consistent with the naptime, you need to make sure to try. He needs to understand that at x time everyday he naps. You need to be consistent, unstressed and relaxed with him. This will take time and he will regress from time to time. Just accept that you are moving forward. It will be hard - it's a weaning and it's hard for both of you. But keep working at it.
What time does he nap?