Well, as for as my self is concern….it was a my first visit to the Iran and I didn’t find even a little problem in communication. My level of understanding Persian is zero. So, I just spoke English everywhere. Yes, Inside the Holy Shrine of Imam Ali Raza (Peace be upon Him) …..heavy majority Khaddams are not able to understand any language other than Persian. I spent first 3 days around Holy Shrine and also visited markets including Bazar-e- Raza and Bazar-e-Buzarg . Only in this part of the Mashhad , English is not so much help full but remaining part of the city, where local people live…communication is not a problem. before coming to the Pakistan, I stayed few days at in the area of Danish-e-Amoz at my Iranian friend’s house and 80 % of his male and female friends used to speak with me in English. When I entered first time in the Holy Shrine then I was also lost myself because it is so huge and have many main gates (5/6). So, I just got a map of the Holy Shrine from the point outside the Holy Shrine. There are many points/cabins where these maps are given free and printed in Persian, Arabic, English and Urdu. Due to this Map, I never lost myself again and in fact, I was able to visit the whole area of the Shrine. So, I am surprised if you never get a map from that cabin.
In the Qom.…Arabic and Persian is being spoken and understandable but inside the Holy Shrine…. There is a department of the Urdu where special staff is available which guide Indian and Pakistani Zaireens/Pilgrims. So, I am surprised to hear that you had a opposite experience in the Iran
As for as attitude is concern....again...I got a friendly attitude. When I was in Shiraz....I was asked few times by local families to join them in their lunch in the gardens. Same happened with me every where like in Tehran,Isfahan, Mashhad except in Kerman and Qom.
So, I think....I was lucky enough that I didn't had a bad experiences. (Some times, when i entered in the Local Bus....passenger next to me...gave a rent of me at his own wish)
I was definitely lucky 