If you are saying you have 18 at idle and only 21.3 w/the engine running at or above 3000 RPM, this is pointing to a non operational mechanical advance mechanism.
This isn't at all uncommon. The ionization of the air inside the distributor cap causes rust to form on all the steel parts, this can cause sticking.
But more likely, is the advance plate bushing is dry and this will cause the plate to become almost unable to turn on the distributor shaft by the force of the weights and/or vacuum advance alone- and if it DOES turn, it will tend to stick.
This would be a good case for a thorough cleaning.
an exploded view, along w/THIS
description will get you through it, most likely. You might do a search for better instructions, I don't have a "go to" site for that.