Both sides failed to score during the first 90 minutes of their gruelling semi-final match at Thien Truong Stadium in Vietnam.
Thailand striker Weerathep Pomphan broke the deadlock in the 95th minute, which was enough to ensure Thailand a place in final after keeping Indonesia at bay for the rest of the extra-time.
The intense battle resulted in three players being shown the red card — two Indonesians and Thai midfielder William Weidersjo.
Thailand will face the winner of the match between hosts Vietnam and Malaysia in the final on Sunday evening.
A victory will bring Thailand its 17th gold medal for football.