text после определённого размера поля начинает храниться в отдельной таблицэ (читать по ключевым словам postgresql toast, если интересно).
В данном случае alter table убирает необходимость в toast для этого столбца — потому pg_table_size её перестаёт видеть и учитывать.
Баг в pg_table_size, видимо.