The new contract replaces a one-year deal the hurler signed in January and comes only a day after he was named a member of the club's 2013 starting rotation following the demotion of Ricky Romero to the minor leagues.
The deal also includes a club option for 2015.
Happ, 30, compiled a combined 10-11 record with a 4.79 ERA in 28 games last season for Houston and Toronto.
He has followed that up with an effective spring training this month, posting a 1.90 ERA in seven Grapefruit League appearances.
Over 116 career games with Philadelphia, Houston and Toronto, Happ has compiled a 35-35 mark with a 4.19 ERA.
Millions of Getty images now available for free via embed tool
NBC reportedly holds celebs hostage to Jimmy Fallon's show