Я еще раз рассмотрел свою проблему, и проблема в том, что PyRSS2Gen использует библиотеку sax в python, которая не имеет понятия CDATA, по крайней мере, при записи XML. Моим решением было просто отказаться от PyRSS2Gen и напрямую использовать minidom, который понимает разделы CDATA. Это означало несколько дополнительных строк кода.
Как только html-текст внутри моего тега описания был должным образом заключен в раздел CDATA, необработанный xml выглядел хорошо и также отображал то, что я хотел, в 3 читателях RSS, которые я пробовал.