Both are new expressions, and haven't gone through the full evolutionary process yet. Both are used, and both are useful. Also, they both make sense, which is not a requirement, but always helps.
Usually in refers to a 3-dimensional container, while on refers to a 2-dimensional surface.
- The book is in the box or on the table.
So the question is whether an email has 2 or 3 dimensions.
Then the rule will be:
Use in if it's 3 and on if it's 2.
Unfortunately, however, the whole phenomenon of email happens metaphorically, so there's nothing with any real dimensions to hold on to. The only thing one actually sees is letters on a screen arranged in a particular way. It turns out that there are two metaphorical ways we can interpret, speak about, and think about it -- or at least that's all we've thought of so far. Email is pretty new.
One way is to use the metaphor theme
Since letters are on paper, and paper is 2-dimensional, this allows on. That is, we speak (and think) of the email as being flat; therefore something can be on it.
The other metaphor theme that we use is to focus on the contents of an email.
- An Email is an Information Container
Containers are almost exclusively 3-dimensional, so this allows in.
Both views are reasonable, though neither is actually real. Computers are so new in our experience that we're constantly inventing new metaphors to talk about them, and we can switch views without blinking, or even noticing what we've done.
After all, all computer terms are metaphors, dragged in from somewhere else and assigned a new meaning -- for instance,
editor, file, folder, spreadsheet, hacking, jump drive, slide show, the Net, the Web, surfing, spam, overflow, virus, worm, cut-and-paste, cyberspace, garbage, troll, wizard, etc.