What I did was turn Matthew's nap time into a "quiet time". Around 3 years old, I experienced the same thing.. some days he would nap.. but most days he wouldn't. The quiet time was an hour in length, just him in his room looking at books. If he didn't fall asleep, then I would get him up. Then I would move his bedtime back a wee bit 6:30 ish (he was in bed by 7:00) and I would let him sleep in if he was still sleeping at 7 am.
He dropped the afternoon nap within a month.... unfortunately.. :roll: