Hmm... I think the sanitizer itself works as you say. There's something else interfering which I don't understand. For info, my use case is to distribute emails from committee members to other committee members and keep a central repository, so there are several steps in the process - the module, email clients and PW core (plus my own code) - so finding the culprit is proving a bit tricky.
The body field I am using has HTML Purifier enabled, so using it in the module doesn't really do anything (apart from seeming to add spurious <p> tags).
As regards amendments to the module, on reflection, it seems that there are several possibilities for adding options:
Further allowed tags
Set stripTags =>false
Use sanitize-purify rather than sanitize->textarea
Don't sanitize (rely on host field sanitization)
.. and maybe more. Given this, it might be best to wait and see what @Pete thinks.