Lee was the starting first baseman in the Diamondbacks' inaugural season of 1998, and he hit .269 with 71 runs scored, 22 home runs, and 72 RBI and finished 3rd in the voting for NL Rookie of the Year. Lee has the distinction of having the first hit (a single) as well as hitting the first home run in Diamondbacks history on March 31, 1998 in a home game against the Colorado Rockies, however the team lost the game 9-2 (Lee also had scored and drove in the first runs in D-Backs history with that blast). Lee was part of the Diamondbacks' trade for Curt Schilling from the Philadelphia Phillies, along with pitchers Vicente Padilla, Omar Daal, and Nelson Figueroa on July 26, 2000.
In 56 games with the Phillies in 2000, Lee batted .239 with 19 runs scored, 1 home run, and 14 RBI. In 2001, his first full season with the Phillies, Lee appeared in 157 of 162 games, the most of any season in his career. Lee batted .258 with a career best 75 runs scored, while hitting 20 home runs, and also driving in a career best 90 RBI. The Phillies finished 86-76, just two games behind the Atlanta Braves for the National League East. In 2002 with the Phillies, Lee played 153 games and batted .265, however his stats began to decline as he scored 55 runs, hit 13 home runs, and drove in 70 RBI. On December 21, 2002 the Phillies released Lee granting him free agency, two weeks after signing free agent first baseman Jim Thome.
On February 6, 2003 the Tampa Bay Devil Rays signed Lee to a contract. In 145 games with Tampa Bay, Lee batted a career high .275 while tying his career best with 75 runs scored, hitting 19 home runs, and driving in 70 RBI. On November 2, 2003 Lee was again granted his free agency and on March 2, 2004 he signed with the New York Yankees.
In 2004 with the New York Yankees, Lee appeared in only 7 games, missing most of the season with a torn labrum in his left shoulder which required surgery. Lee had a .105 batting average, scoring 1 run and driving in 2 RBI, but did not hit any home runs. On October 29, 2004 the Yankees declined the club option for a second year on Lee's contract and he was released after the Yankee's paid a $250,000 buyout. After again becoming a free agent Lee signed back with the Tampa Bay Devil Rays on February 11, 2005.
In 2005, Lee appeared in 129 games batting .272 with 54 runs scored, 12 home runs, and 49 RBI. On June 19, 2005 Lee had his consecutive errorless games streak ended at 170, then the second longest in American League history and only 8 games behind the record held by Mike Hegan whose streak ran from 1970 to 1973. With the bases loaded, Larry Walker grounded out to Lee at 1st base. Lee then threw home with his throw beating David Eckstein to the plate, however, catcher Toby Hall had to stretch for the ball and failed to touch home plate, allowing Eckstein to score and giving Lee a throwing error. Lee's last error prior to this was on May 8, 2003. In his final season of 2006, Lee batted .224 in 114 games, scoring 35 runs, hitting 11 home runs, and driving in 31 RBI. On Mother's Day, May 14, 2006, Lee was one of more than 50 hitters who brandished a pink bat to benefit the Breast Cancer Foundation. On September 10, 2006, Lee was released by the Tampa Bay Devil Rays.