I have installed MATLAB R2019a, and find that <cmd> ` once again cycles among all open MATLAB windows, rather than just toggling between the last two. However, I've been unable to figure out its rule for the order.
To review: on the Mac, the OS maintains a stack of apps, and <cmd><tab> lets you pull an app to the top of the stack. <cmd><shift><tab> operates with the same stack, but starting at the bottom (i.e., the right end of the row of icons).
With Microsoft Office on the Mac, <cmd> ` cycles among windows in one order, and <cmd><shift> ` cycles among them in the opposite order. Unlike with <cmd> <tab>, it does not matter whether you hold <cmd> down between presses of `. The windows form a ring rather than a stack, and the keyboard combinations do not affect the order. The order can be changed by clicking on the windows. If you click on A then B then C then D, then <cmd><shift> ` will visit them in that order, and <cmd> ` will visit them in the opposite order. If you're on window A and want to toggle between A and B, first click on B to make it "next". Then <cmd> ` will go "back" to A, and <cmd><shift> ` will go "forward" to B.
With MATLAB R2019a, if you click on window A then B then C then D, then <cmd><shift> ` will visit them in that order. <cmd> ` will also visit each of the windows, but not necessarily in the opposite order. It seems to use a different ring, that is not affected by either clicks or keypresses. If you use one of these shortcuts to cycle through the windows and go too far, you cannot use the other shortcut to "back up". I've found no convenient way to toggle between windows.
I really wish <cmd> ` and <cmd><shift> ` implemented a stack of windows, so I could conveniently navigate among a subset of them, while keeping others available at need. Failing that, I think the Office scheme (which lets me "back up") or even the R2018b scheme (where <cmd> ` just toggles between the last two windows) look more useful than the R2019a scheme.