OK I managed to find a funny work-around. I created a new polygon shapefile which is a huge rectangle which covers the entire area of my map world. The file is named 'North_Arrow'. I imported it into ArcGIS Online and gave the symbology 100% transparency so it was on the map but not visible.
I named the layer '↑North' (press Alt-24 to get that arrow). So now when I produce a map using the print widget, the legend has an item at the top which is effectively acting as a North arrow! Phew!