well... we had this with dd2 and you're right, it is a nightmare!
What we did with her, one of us went to bed with her, read her a story and got her settled in bed, then we either got in bed with her, or sat at the side of the bed and read a book till she dropped off.
Occasionally she tries to mess about, but she knows now that she's not going to be allowed to get out of bed again and she does settle a lot quicker than if we leave her to settle herself.
It's not for everyone, but we have found that we can normally get her to sleep within half an hour or so, which is a lot less time out of our evening than when she's up and down all night (sometimes for HOURS)
If he's still having a nap during the day, he may of course, not be particularly tired, so you might want to think about dropping that nap if he's having one.