Yeah, that’s not helpful.
As per the thread that I sent you to, Makercam does a poor job of optimizing. Using a g-code optimizer works off of the gcode file originally produced, so there is only so much they can do.
The best bet is to use a better CAM program that affords you more control of the cuts being performed. Looking at your image, you should be able to cut the whole thing without any extra z-axis moves (i.e. one for entering the material, and one for finishing the cut). Actually getting the CAM to do that would likely require it to be able to double cut some areas.
If you really have a lot of these to cut, then it might save you time in the long run to find a better CAM program. I use Autodesk inventor (which offers a free license for non-commercial work) and HSM CAM as an add-on. There are a lot of manual settings available to optimize cutting in that program, and I’ve only scratched the surface. That said, I spend a few hours one night optimizing a small project that included ramps cut into the material, and the permutations available for how to cut it seemed endless. But in the end, it left me with several choices to trade off between the surface finish and the time to cut.
If you are committed to using free software, then you will likely be at the whim of their pathing routines, which may leave much to be desired.
One thing that just popped to mind, though, is that I believe MakerCam has a “preserve cutting order” option. Selecting the islands in some sort of order may help in how the paths are created. Again, I don’t use Makercam, so that idea might be nnonsensical.