Sembra essere questa sezione, poco più a metà:
WHEN @Data_Type IN ('uniqueidentifier')
THEN
'COALESCE('''''''' + REPLACE(CONVERT(char(255),RTRIM(' + @Column_Name + ')),'''''''','''''''''''')+'''''''',''NULL'')'
Guarda che si sta convertendo in un CHAR(255), il che significa che il valore viene riempito a 255 caratteri. Cambialo in VARCHAR invece e dovrebbe andare bene in quanto ciò non riempirà i valori con spazi.