Monitor[NDSolve[{eq, bc1, bc2, ic}, 
      z, {t, 0, 100}, {x, -Lx, Lx}, {y, -Ly, Ly}, Method -> mol, 
      StepMonitor :> (time = t)], 
     ProgressIndicator[time/100]]


[![enter image description here][1]][1]

This doesn't appear to slow down the evaluation in any significant way:

    RepeatedTiming[
      NDSolve[{eq, bc1, bc2, ic}, 
       z, {t, 0, 100}, {x, -Lx, Lx}, {y, -Ly, Ly}, Method -> mol], 60]

    RepeatedTiming[
     Monitor[NDSolve[{eq, bc1, bc2, ic}, 
       z, {t, 0, 100}, {x, -Lx, Lx}, {y, -Ly, Ly}, Method -> mol, 
       StepMonitor :> (time = t)], ProgressIndicator[time/100]], 60]

    RepeatedTiming[
     Monitor[NDSolve[{eq, bc1, bc2, ic}, 
       z, {t, 0, 100}, {x, -Lx, Lx}, {y, -Ly, Ly}, Method -> mol, 
       EvaluationMonitor :> (time = t)], ProgressIndicator[time/100]], 60]

>`11.46`

>`12.`

>`11.9`

  [1]: https://i.sstatic.net/EAq93.gif