I am an spanish ATC. I use my mother tongue with spanish pilots because it gives me more confidence they will understand what I want to say.
Whenever both, spanish and english speaking pilots are involved, I try to use english, so everyone understands all the communications. But usually, the first english communications to an spanish pilot get lost and I have to say again over and over. Other times, I can assure pilots are not listening to other communications, even when they are affected second hand by them.
Besides that, I would agree that everyone should use only one languaje at all times... What about chinese? It is also an official ICAO language...
Regards,
Á.