Enchanter has issues. Your original wording has (as mentioned by others) the problem that "when play" happens before resolving the card, which means Cantrips can act as cursers. Also if i play a terminal card directly after a Village, no Curses are given.
There was Warfreak2's idea to make it look at cards in play, but that solution didn't really help. If the hex card was a Village and i played two terminals after that, players still got a curse. Vice versa, if a play a Village and then a terminal hex card, no curses.
To make it work the way you intended it to do, you would have to do a awful, long wording like this:
"When a player just finishes resolving a card from the pile with the hex token on it, if he has the same number of actions remaining as he had when playing it, each other player gains a curse"
...I think the card idea is nice, but not nice enough to be worth the trouble.
Another thing, one i really don't like, is that the Curse can't be moated even if the card is an attack.