The root cause of the issue was that I was using a relative URL for the baseURL. The Creative Editor SDK expects the baseURL to be an absolute URL.
So instead of
instance.addDefaultAssetSources({
baseURL: '/public/cesdk/assets/',
});
I needed to use an absolute URL like:
instance.addDefaultAssetSources({
baseURL: 'https://mywebsite.com/public/cesdk/assets/',
});
More information about serving assets is in this guide: https://img.ly/docs/cesdk/engine/guides/assets-served-from-your-own-servers/