What does any of that have to do with verifying the actual running clock speed of the setup as it now is? There are a lot of unknowns like you said this was on a breadboard and crystals operating at that frequency don't like breaboards sometimes. You could be operating at a harmonic, especially if the 20mhz crystal is an overtone crystal, don't now.
It's probably something very simple that you're overlooking because you've already checked over everything multiple times. You're missing something, a good first step at this point would be to find out what the clock frequency of the chip right now actually IS. You're assuming FAR too many things without testing for them.
Write a simple program that uses a timer prescaler to turn an LED on and off with a high prescaler, like 1024, that will turn the I/O line on an off at near audio frequencies.