multicols
environment are worked at one at the time, so the moment the nested one is started the outer one is not continuing until it is finished. Therefore the inner environment has no clue about any possible restrictions resulting from the outer environment being eventually split into columns and pages. All it sees is that it is called within a "box" (so to speak). And if that happens it will form a balanced box which is then returned to the outer layer. As a result this box forms a single (unbreakable) object in the outer multicols
and is therefore moved to the next column in case it doesn't fit.
The goal of multicols
is balancing columns. On the outer layer it also has to deal with page breaks but if there is more than one page worth of material, the first pages are simply cut from a galley (which has been fully processed --- i.e., that galley is just a bunch of characters boxes and spaces and all macros have long been processed). So either the whole approach would need to be radically different so that outer and inner multicols
would interact with each other or the inner multicols
would need to produce a breakable object (which is not really possible if at the same time you allow columns with baselines in different places etc). However the latter approach would result in strange formatting as then the text flow would jump back and forth between columns/pages.
So bottom line, no way (with multicols
).
Having said that, I think I remember that you can actually combine the "twocolumn" option with multicols
which might give you what you want. However, no guarantee that this is still working these days.
multicols
cannot break a column, AFAIK.