heathfield - The reason is this, the countries you mention are all named after the people who live there, so take Afghanistan for example, this area is traditionally populated by Afghans, stan means land (or technically place) so Afghanistan means land of the Afghans.
However... Pakistan is a made up name, literally it means land of the pure (in Urdu), the country itself was made up from the Punjab, Afgania, Kashmir, Sindh and Balochistan and some of the capital letters were used to make the name.
Therefore somebody from Afghanistan is and Afgan, but somebody from Pakistan is not a **** in the same sense.
The term is used but it doesn't have the same strong root as the other terms you talk about.
...and as for your point that it has been in use in the English language for hundreds of years, Pakistan was established on 14 August 1947, so more like 62.