Thanks Lee. I've tried toggling the window mode and moving things between displays and virtual desktops, with and without the external display, but every time it's either the separate mode or the normal mode that jumps to somewhere else. If I switch from separated mode to normal and then back to separated (or vice versa) Affinity Photo ends up moving to another screen.
Actually just now as I was writing this I got the toolbar visible by unplugging the external display at some point between moving windows! I now suspect this might have something to do with the fact that my external display is wider than my 13" Macbook Pro, and I had scaled the toolbar to the extreme. So maybe it was too much for my little Macbook and that's why it decided to leave it out of the screen. The jumping between screens might also be caused by the wide toolbar, if it was somehow on both screens at the same time.
I've noticed that the external display sometimes causes confusion to Affinity software, for example every time I adjust my brush size or opacity with the ctrl+alt+drag the cursor jumps lower on the screen after I finish scaling. And artboards sometimes get blank when I switch between displays. Luckily it's only visual and I can restore the content by closing and reopening the file.
I'll be careful now not to scale the toolbar too wide in the future so I can hopefully keep it visible! Thanks for your help Lee.