1) Yes, it is correct. The difference between what you say and my other answer is that in your case email and notification won't be tags on their own but just words in the database. That means you can search for those words while in my other approach you can't, because you wouldn't even add them.
However, although what you suggest is what the core does, it doesn't make much sense when you're pre-generating tags. This is because if you have no posts that match those words that are part of tags then you won't get any results either. So it is as if they wasn't there and, in that case, then there isn't any need to add them.
Also take into account that when you actually link a post to the email-notification tag the words email and notification are both added to the ^words table. So there is no need to add them.
2) ^posttags primary use seems to be fetching related questions, as well as listing recent questions for a given tag. That's why the table has the date of the post denormalized. In the case of ^tagwords, its main purpose is, as you've mentioned, searching.