俺も似たようなことをするデーモンを最近Cで組んだけど
Returned mailの判定をdovecot受信ディレクトリをsleep(30)で定期確認するとかいう汚い仕様であげちゃった。
perlでもシェルでもいいから受信の瞬間だけプログラムを実行するような仕方知ってる方教えてください。
送信・再送信はsendmailでやってます。