Not a bad idea, and it gets especially interesting with self-trashing cards, as you point out. On the other hand, if this is the only trasher on the board, I doubt I'll want to use it on most $4s, and very unlikely on anything costing more than that. Salvaging a card costing $4 gets me $4, apprenticing it gets me +4 cards, bishoping it gives me +$1 and +3 VP. Charburning a $4 cost card gets me $2 and gives out a curse - this seems a little weak, especially since you'll have to go through the entire charburnable pile to give out all the curses. Spending $4 now to give out a curse later with a $2 rebate doesn't seem that great to me.
It also seems a little odd that this could be a pretty game-warping card (if it lands on Feast or MV or some such) even if no one buys it. Maybe a Trash token should get added to a pile of your choice when you buy a Charburn? This means curses don't fly until someone actually buys one of these, and the token will avoid landing on something unlikely to be trashed like King's Court or Wharf. I don't think having Trash tokens on more than one pile would affect things too much, and would probably make it useful in more situations.