Mohammad Ghaderi (23rd minute) put Iran in the lead before the break while Mohammad Sharifi (82nd, 90+) converted a couple of penalties towards the end.
Courtesy Wednesday's result, India finished on one point from three outings while Iran topped Group A with seven points from three matches to march into the quarter-finals.
India coach Nicolai Adam made two changes to the starting XI, Lalengmawia and Ninthoi replacing Aniket Jhadav and Aman Chetri respectively. But mispasses in the midfield didn't help the hosts' cause. The trapping at times was bad and the physically superior Iranians managed to win most of the second balls.
Even as both teams started on a cautious note, Iran were able to increase manpower in the final zone. The first goal came in the 23rd minute -- a slippery Ghaderi sneaking in between the two Indian central defenders to blast it in after being fed by Amed Khodamoradi.
India's sole chance in the first half came in the 17th minute. The rush of adrenalin forced Komal Thattal to go for glory after he had sped into the rival box. A back pass to Lalangmawia who was perfectly positioned to tap it in into a yawning goal could have given India the lead.
Changing over, Nicolai brought in his first substitution -- Aniket coming in for Mohamad Rakip in the 46th minute. The first cross into the box by the hosts came in the 49th minute, but Iran goalkeeper Gholam Zadeh leapt above all to gather Ninthoi's floater.
India suffered a jolt when they were down to 10-men -- Boris was given marching orders after receiving his second yellow card in the 55th minute.
Ten minutes later Lalengmawia was replaced by Aman, as Nicolai went all out for the equaliser. The third substitution came in the 69th minute when Narender was put in place of Sarif Khan.
Iran, taking full advantage of their numerical superiority, were dominating by then and had not Indian goalkeeper Dheeraj Singh intervened on a couple of occasions, the scoreline could have been wider.
A 10-man India, nevertheless, laboured hard. But as it in the first half, and even in the entire championship, mispasses spoiled the counters. Iran looked composed with the support for each other in the midfield.
It eventually paid dividends as Iran scored from two penalties with Mohammad Sharifi converting a brace from the spot in the 82nd minute and then one in injury time.