Porto took the game to the hosts at the Vicente Calderon Stadium, with Jackson Martinez the focal point of the attack while Manchester United manager David Moyes watched on from the stands.
Danilo's eight-minute cross into the box found Martinez's foot but the Colombia striker guided it high off the crossbar.
Garcia scored against the run of play with a daring half-volley as he touched the ball inside toward the goal line before swiveling to fire a shot past goalkeeper Helton into the near corner with almost no angle.
Silvestre Varela then headed off the crossbar before Martinez was brought down by Aranzubia to set up the penalty, which was saved by the backup goalie who was filling in for injured regular Thibaut Courtois.
Martinez sent Varela's short pass off the outside of the post just before Atletico struck for the second against the run of play.
Oliver Torres sprung Costa with a long pass that the Atletico striker headed down past Helton, and he curled in from angle to keep adding to his goalscoring tally.
The Portuguese champions hit the post for the last time in the 69th as Lima beat the offside trap but saw his quick shot come off the near post.
Porto would have advanced to the last 16 with a victory since Zenit lost 4-1 at previously winless Austria Vienna.