if non-Muslim give money or food for iftar in mosque with his willingness for the poor people who haven't enough food to iftar their fast. Then it is allowed in Islam to accept money or food from them?
No its depends on individuals but technically it's wrong mosque can't receive money or food from non Muslim as we can't give zakat to them its necessary to give the deserved ones and Muslims.
As being a Muslim we know that the non Muslims doesn't give Zakat. There is no concept of Zakat in their religion. As if they show mercy towards poor people then they can gave money to any other NGO's but is not permissible to gave in any mosque. So in Islam this is not allowed up to some extent to take any money as a Zakat from the non Muslims.
Yes, it is allowed to accept money as gift for food during Iftar and for food anytime. In our prophets (pbuh) times, none muslim nations and people used to pay Tax and Zakhat to the Muslim rulers, who in turn gave the money to Mosques and so forth. Acccepting Food is not a good idea, unless you know if it Halal, cooked in a Halal way etc. Better to avoid it, unless they are things like fruit, drinks etc. They are fine.