El problema no es con dbms_output
pero con SQL*Plus.
Usar
SET SERVEROUTPUT ON FORMAT WRAPPED
o
SET SERVEROUTPUT ON FORMAT TRUNCATED
para preservar los espacios.
De la documentación (PDF)
de SET SERVEROUT WORD_WRAPPED
(que es el estándar):