Navarro joined the Angels during September call-ups on September 1, 2011. Navarro spent the whole 2012 season in the minors, batting.294/.336/.403 for Salt Lake. Navarro played in 64 games for the Angels in 2013, hitting.245/.302/.340 in 159 at bats. in 2013. Against the Seattle Mariners on July 18, 2014, Navarro came in to pinch-hit for John McDonald in the bottom of the 16th inning. He ripped the first pitch through to centerfield, driving in the winning run represented by Mike Trout who was on second base after hitting his 100th career double. It was Navarro's first career walk-off RBI and the first pinch-hit walk-off by an Angel since September 7, 2012. It was just the second pinch-hit walk-off in the 16th inning or later in Angels franchise history. Efren hit his first career home run off Justin Verlander on July 26. Navarro was designated for assignment by the Angels on January 19, 2016.
On January 26, 2016, Navarro was traded to the Baltimore Orioles for cash considerations. He was designated for assignment on February 25, 2016, and elected free agency rather than accept a minor league assignment.
Seattle Mariners
On March 2, 2016, Navarro signed a minor league deal with the Seattle Mariners. He batted.243/.316/.362 for Tacoma. He was released on July 4.
Toros de Tijuana
On July 5, 2016, Navarro signed with the Toros de Tijuana of the Mexican Baseball League. He was released on July 7, 2016. On July 9, 2016, Navarro signed a minor league deal with the St. Louis Cardinals.
Detroit Tigers
On January 10, 2017, Navarro signed a minor league contract with the Detroit Tigers that included an invitation to spring training. On September 1, 2017, the Tigers purchased the contract of Navarro and that same day was selected in the starting lineup. He batted.276/.370/.395 with 10 home runs and 61 RBIs in 479 at bats for the triple-A Toledo Mud Hens, and.230/.319/.377 in 61 at bats for the Tigers. He was outrighted to AAA on November 3, 2017. He elected free agency on November 6, 2017.
Chicago Cubs
On January 28, 2018, Navarro signed a minor league deal with the Chicago Cubs. The Cubs promoted him to the major leagues, where he had one hit in six at bats, on April 10 following Anthony Rizzo being placed on the DL. He was outrighted to AAA Iowa Cubs on May 29, 2018, with whom he batted.310/.386/.440 with 4 home runs and 29 RBIs in 184 at bats. He was placed on the temporarily inactive list on June 8 following his decision to play in Japan, and later released on June 14.
Hanshin Tigers
On June 15, 2018, Navarro signed with the Hanshin Tigers of Nippon Professional Baseball. On December 2, 2019, he become free agent.
Toros de Tijuana (second stint)
On February 10, 2020, Navarro signed with the Toros de Tijuana of the Mexican League.