Advice and Good Luck
You should be aware that there is a distinction between a private and business tenant. It is much easier to evict a private tenant than a business one. It does take time, about a year and yes, they do not pay your anything while going through this process, although you can make a monetary claim for all monies owed which they will have to pay you once they have been evicted. Although it is very easy for them if they are not Moroccan to evade this award. BUT remember, you can't get blood from a stone so this award in reality means nothing to you.
I am not in the habit of recommending anyone in Morocco as it far too often comes back to haunt you, but if you wish to use the lawyer I use whom I have no problems with, his name is Houssam EL MAAROUFI, based in Marrakech. He speaks English. His number is 0524433498 (although the office help do not).
Not knowing what your contract actually says, a very easy way for you to evict the tenants may be to make their business less financially beneficial to them by reporting various infractions to the local authorities. As you know, you will have to pay backsheesh, but it may be worth it financially to you. Marrakech is not doing too well now so this may be easier now than ever before. Without a financial incentive for them to stay, they may want to leave on their own which is the best way for you.