Monday's semi-final was billed as being a contest between the competition's two best teams and, although Carlos Queiroz's men had their chances, refereeing decisions did not go their way and Japan ultimately cruised.
Neither side was able to stamp much authority on a cagey first half and things looked much the same after the break until Japan broke the deadlock, leaving Iran angry as they felt a dive went unpunished in the build-up to Osako's first.
Japan was then given a penalty that, even after VAR consultation, was allowed to stand and Osako buried the kick in convincing fashion, before Genki Haraguchi finished Iran off late on.
A tightly contested first half of few chances saw Japan go close first, but Ritsu Doan sent a feeble shot wide of the bottom-right corner from 16 yards in the 19th minute following a well-worked move.
Iran sprang into life soon after – Sardar Azmoun playing a brilliant one-two with Vahid Amiri, before slipping the ball through Takehiro Tomiyasu's legs and forcing a fine save from Shuichi Gonda.
Japan controversially went ahead early in the second half, however.
Iran felt Takumi Minamino had dived when the ball was played left, with Queiroz's players swiftly surrounding the referee, but play was allowed to continue and the subsequent cross was headed in by Osako.
There was further controversy just past the hour, as Morteza Pouraliganji was penalised after the ball struck his hand when sliding in to block a cross, and Osako converted the resulting spot-kick following a VAR delay.
Haraguchi ended Iran's slim hopes of a comeback in the first minute of stoppage time, emphatically finishing after being fed into the box by Minamino.