The Portuguese were stunned when Dirk Kuyt levelled midway through the half from the penalty spot after Ezequiel Garay handled, an away goal for Fenerbahçe meaning the hosts needed to score at least twice more.
Cardozo's fine left-foot finish restored Benfica's lead on 35 minutes in a breathless first half and his decisive strike came on 66 with another crisp low shot from inside the area.
The final is in Amsterdam on May 15. Chelsea, last season's Champions League winners, beat FC Basel 3-1 at Stamford Bridge on Thursday to ease through 5-2.