In the winter of 2001, Chávez was waived by the Royals and then claimed and waived by both the Mets and Detroit Tigers before being claimed by the Montreal Expos where he played in 309 games over three years while splitting time at AAA Ottawa and Edmonton. Playing full-time for the Expos in 2003 and 2004, Chávez batted first in the lineup and started in center field, stealing 18 bases in 2003 and 32 in 2004. On October 3, 2004 Chávez recorded the final out in Expos history in their 8–1 loss to the Mets at Shea Stadium. In 2005 Chávez played in only seven games in the majors for the now relocated Washington Nationals before being traded to the Philadelphia Phillies for fellow outfielder Marlon Byrd. During his tenure in Washington, Chávez was given the mocking nickname of "Inning Endy" by Nationals fansites due to his tendency to swing away rather than work the count to his favor which often resulted in groundouts and popups to end the Nationals innings.
Philadelphia Phillies
Chávez spent the rest of the 2005 season with the Philadelphia Phillies and appeared in 91 games with 107 at bats and hit only.215. At the end of the season, Chávez became a free agent for the first time and signed one year, $500,000 contract with the Mets signed on December 23, 2005.
New York Mets
During spring training, Mets manager Willie Randolph worked with Chávez to improve his hitting. Chávez's speed and his modified batting style sparked a 90-point jump in his batting average over the previous season as the Mets fourth outfielder. His improved hitting and excellent defensive skills contributed to the Mets winning the National League East. Chávez's signature moment came at Shea Stadium in Game 7 of the 2006 National League Championship Series. In the top of the sixth inning, with the game tied 1–1, Cardinals third baseman Scott Rolen hit a pitch off Mets starter Óliver Pérez. Leaping over the left field wall, Chávez caught the ball with the tip of his glove to rob Rolen of a two-run home run. Chávez then threw to cutoff man second baseman José Valentín, who threw to Carlos Delgado at first base to double off Cardinals center fielder Jim Edmonds for an inning-ending double play. "The Catch" was named the top post-season moment in the 5th annual This Year in Baseball Awards. On July 13, 2007, American International Group sponsored a special Bobblehead Doll day to commemorate the catch. The Left Field entrance gate of the Mets' current ballpark, Citi Field, features a metal silhouette of a baseball player making a leaping catch similar to the one Chávez made in the 2006 NLCS. Chávez's playing time decreased dramatically in 2007 when he only saw time in 71 games, primarily splitting time with regular left fielderMoisés Alou, due to left hamstring issues which landed him on the disabled list twice. That winter, he reinjured the hamstring and injured his right ankle while playing winter ball in Venezuela for Navegantes del Magallanes. In 2008, Chávez again saw time as the Mets' fourth outfielder and hit.267 in 270 at-bats. On September 28, the final day of the 2008 regular season and the final game at Shea Stadium, the Mets played the Florida Marlins. With an NL wildcard spot at stake for the Mets, Chávez made another terrific catch in the outfield during the top of the seventh inning. After a ball was hit to left field by Jorge Cantú, Chávez made the catch for the final out of the inning. Despite his defensive play, the Mets lost to the Marlins 4-2 and failed to qualify for post-season play.
Seattle Mariners
On December 11, Chávez was involved in a three-team, 12-player trade in which he was sent, along with pitcher Aaron Heilman and several minor leaguers, to the Seattle Mariners. On June 19, 2009, while trying to catch a pop-up, Chávez collided with shortstop Yuniesky Betancourt and suffered a torn ACL in his right knee which ended his 2009 season.
Texas Rangers
On February 15, 2010, Chávez agreed to a minor league free agent contract with the Texas Rangers and spent time with the Rangers' Rookie League team, the AA Frisco and AAA Oklahoma City while coming back from his ACL injury. In 2011, he batted.301 with 5 home runs in 256 at-bats and helped the Rangers to the 2011 World Series, which they lost to the St. Louis Cardinals in seven games.
Baltimore Orioles
On December 18, 2011, Chavez signed a one-year, $1.5 million contract with the Baltimore Orioles. Chávez again saw major time on the disabled list appeared in only 64 games, batting.203 with 12 RBIs and two home runs. On August 4, he was designated for assignment to make room for Nate McLouth and spent the next month with AAA Norfolk. He was recalled by the Orioles in mid-September.
Seattle Mariners
On December 31, 2012 Chavez signed a minor league contract with the Kansas City Royals, but was released on March 22, 2013. On March 24, Chavez signed a minor league contract with the Seattle Mariners and appeared in 97 games for the Mariners hitting.267.
On March 8, 2016, Chavez signed with the Bridgeport Bluefish, in the Atlantic League. Chavez was very successful in his first season with the Bluefish, batting.345 and winning the league batting title.
On March 9, 2017, Chavez signed with the Pericos de Puebla of the Mexican Baseball League. He was released before the start of the 2018 season on January 23, 2018.
On February 26, 2018, Chavez signed with the Somerset Patriots of the Atlantic League of Professional Baseball. He retired as an active player following the conclusion of the season.