Лечится (если вообще нужно лечить в данном конкретном случае, потому как часто ленивый выхлоп Writer - самое оно) неленивым Writer. Но рост потребления памяти по мере работы Writer, очевидно, всегда будет - надо же где-то хранить записанное :) Если запись идёт в энергичный моноид, который по смыслу "не растёт" (типа Sum), да ещё и в энергичном Writer, то будет constant space