During normal gameplay, the next map on the mapslist is always known (and can be displayed using the /info command).
Why not download this map in background if it is not available on the client yet? For those with a limited amount of bandwidth, the configuration application could be used to either limit the bandwidth available for downloading maps or completely disabling the map preloader.
This way, new players on non-standard servers would not have to rejoin every round. What do you think?