Good question. I had the exact same issue. This is how I did it:
Instead of System -> Go to Layout, I created a function called GoToLayout, and I type in the layout name. What it does is it fades in a Black screen first (0.5 seconds), then shows a nice "Loading..." text then immediately (0.05 seconds later) you do System -> Go to Layout (that layout name as in Function's parameter). This way, it will get stuck yes, but at the Loading... text. An extra thing I did, on every start of every layout a Black screen first fades out. To make it look natural.
By the way, you cannot have an animated Loading text or logo, because it really will always get stuck.
For the black screen, I had a small 100x100 black sprite, that fills in from "-1 to ViewportWidth(0) + 1" for both width and height, and a Fade behavior.
Let me know if that works, or if you need more help.