Although the fix below doesn't always work, it appears to work for me.
When creating a message, by default Thunderbird treats text attachments as a part of the message body. To force it to encode all attachments as actual separate attachments create a user.js file with the following line:
(If the user.js file already exists, just add the line above to the bottom of the file.) The file can be found in your Thunderbird profile directory. Here's where I found my profile directory:
This simply makes tbird always use the
descriptor in the attachment's header rather than intelligently (or stupidly depending on your point of view) use the default:
for inlineable things like text files.