Distinction between pagan and heathen?
Solution 1:
As descriptive terms, both pagan and heathen are out of date, but whereas pagan remains in common use to contrast Abrahamic religion from various pre-modern and revived polytheistic competitors, heathen is usually an aspersion, akin to idolator, infidel or heretic.
In older days, not a few older dictionaries listed them as interchangeable, even assigning circular definitions (i.e. heathen: a pagan; pagan: a heathen). Pagan, too, was more broadly applied: as the 1911 Catholic Encyclopedia has it
in the broadest sense includes all religions other than the true one revealed by God, and, in a narrower sense, all except Christianity, Judaism, and Mohammedanism.
Interestingly, the 1898 Webster's Collegiate Dictionary suggests a reverse trend from the modern usage:
Pagan is now more properly applied to rude and uncivilized idolaters, while heathen embraces all idolaters.
But by the mid-20th century, heathen seems to have fallen out of favor as a synonym for pagan; see for example an Ngram of heathen gods vs pagan gods. Pagan and heathen are at once imprecise and exonymic, and not employed by modern anthropologists.
Pagan remains in the common term for the state cults, polytheistic worship, and/or idolatry of the classical Greco-Roman, Egyptian, Norse, and Celtic worlds (as remembered and mis-remembered in the Christian tradition). Outside of some impolite circles, pagan is not applied to the modern major religions, and rarely to folk religion/animism/shamanism. Thus, worshippers of Apollo or Odin are described "pagans," but traditionally spiritual Iroquois or Baka are not, nor the adherents of Shintoism or Zoroastrianism.
Adherents of neo-pagan movements may describe themselves as pagan or heathen; those who choose one may consider the other to be improper, but there does not seem to be consensus.
Solution 2:
To the limited extent that a consistent distinction can be drawn between the terms, pagan refers to religions practiced by rural peoples in the late Roman Empire, inhabitants of a pagus or country district. The religions of peoples living outside the boundaries of the Roman Empire, either during that Empire's continuance or after it had disintegrated, are more accurately called heathens, since they did not live in a pagus. One difference between pagan and heathen gods could be that pagan gods, following Greek traditions, were deemed immortal, whereas heathen gods could die in time, and their vitality was often seen as varying with the season. Thus, the gods of the Udmurts, who survive east of the Urals, are said to sleep in the earth during the winter.
Solution 3:
One meaning nuance I should bring up here, because you will find it in the wild and it may trip you up, is how believers of these religions self-identify.
In particular, neo-Celtic followers (aka: Wiccans) often informally self-identify as "Pagan". Meanwhile, neo-Germanic followers often primarily refer to themselves as "Heathen".
So if you hear someone seriously self-identify as "Pagan", they probably mean to tell you that they are Wiccan. If you hear someone seriously self-identify as "Heathen", they probably are referring to one of the neo-Germanic systems of beliefs.
Of course if they are joking, they probably just mean they don't hold the beliefs their family would like them to hold.
Solution 4:
Lately, it seems that Pagan = Olympian mythos and Heathen = Asgardian mythos, but I think they were mingled. Heathen in past usage seems to imply a person who is "from the Heath" and generally an untamed infidel, whereas a Pagan was more specifically an idol worshiper.
Solution 5:
Today Pagan refers to people who believe in nature based religions, "I am Wiccan therefore I am pagan." Heathen is a term used by people of one religion to rudely refer to believers of another religion, "Don't be friends with Jeremy, he's a heathen."