When my little boy (almost 3 yrs old) gives me a fuss about taking a nap, I tell him that he doesn't have to go to sleep, but that he has to have "quiet time." He has to stay on his bed in his room with the lights low and he can read or play with his stuffed animals quietly. Even if he doesn't go to sleep, I have noticed that this personal quiet recharge time makes a huge difference for him. (I won't kid you-it helps me keep sane, too!) I also agree with the suggestion that he be more active in the morning. I have noticed that my son practically leaps into bed for his nap when he has been tired out!
If your son is good at following directions and likes to play games, this might work: I have read about someone who tells her daughter that if she can lie very still and very quiet without talking for 15 minutes and not fall asleep then she can get up. The trick is that every time the child opens their eyes, talks, or moves too much, the timer gets taken back to 15 minutes. Usually, if they are following directions, they fall asleep before they win the game! Best of luck to you!