In 2002, Watson was traded with Phil Seibel and Scott Strickland to the New York Mets for Bruce Chen, Luis Figueroa, Dicky Gonzalez and a player to be named later, who would be Saúl Rivera. Watson made his major league debut with the Mets in 2003. Following the 2003 season, Watson was selected off waivers by the Oakland Athletics. He spent 2004 in the minors, and played for the Athletics in 2005. The Chiba Lotte Marines purchased Watson from the A's after the 2005 season. Watson spent the next two seasons in Japan.
In 2008, he played for the Triple-A Syracuse Chiefs in the Toronto Blue Jays organization. In 76 games, he batted .290. He signed with the Doosan Bears in South Korea in January 2009, but was released in May 2009. He joined his hometown Lancaster Barnstormers in July 2009 after a brief stint in the New York Mets system.
He rejoined the Athletics organization in 2010, and was again promoted to the major leagues. On July 21, 2010 he hit his first career home run off of Clay Buchholz of the Boston Red Sox. He last played with the Lancaster Barnstormers of the Atlantic League of Professional Baseball in 2011.