Você não precisa escapar de # dentro da cotação, e é estranho ter uma cotação simples entre aspas simples:
string_list='*,Baker'\''s Dozen,$x^$,#'
Mas é mais fácil com aspas duplas. Então, algo como:
string_list="*,Baker's Dozen,\$x^\$,#"
funcionará.
Você precisa apenas de "\"" para aspas duplas, em vez de ''\''' para aspas simples, e também de escapar de $ para evitar a expansão das variáveis.
Se você quiser minimizar o escape, altere qualquer ' entre aspas simples para '"'"' :
string_list='*,Baker'"'"'s Dozen,$x^$,#'