In 1899, Dillon made his major league debut with the Pittsburgh Pirates. He appeared in 30 games as a first baseman for the 1899 Pirates and compiled a.256 batting average in 121 at bats. He returned to the Pirates in 1900, but appeared in only five games.
Detroit Tigers
In 1900, Dillon was sold by Buffalo to the Detroit Tigers of the American League, at that time still a minor league. Dillon appeared in 123 games for the 1900 Tigers and compiled a.291 batting average. In 1901, Dillon played first base for the Tigers during their first season as a major league club. On April 25, 1901, he hit a major league record four doubles in the Tigers' first major league game. He hit two of his doubles in a 10-run rally in the ninth inning to give the Tigers a 14–13 victory over Milwaukee at Bennett Park. He compiled a.288 batting average in 281 at bats with the 1901 Tigers. In March 1902, Dillon failed to report for spring training with the Tigers, and a story circulated that he had been hospitalized with appendicitis. The Detroit Free Press reported on March 12 that the story about the appendicitis was a canard and that Dillon was feeling well at his home in Normal, Illinois. He rejoined the Tigers and appeared in 66 games for the club during the 1902, though his batting average dropped 80 points to.206. He was turned over to the Baltimore Orioles during the 1902 season and appeared in two games with that club.
Los Angeles Angels
In August 1902, Dillon jumped to the Los Angeles Angels in the California League. He led the California League in 1902 with a.338 batting average in 318 at bats. In October 1902, Dillon was hired to be player-manager in 1903 for the newly reorganized Los Angeles Angels of the Pacific Coast League. In 1903, Dillon led the Angels to the PCL pennant with a 133–78 record and ranked third in the league in batting with a.360 batting average.
Brooklyn Superbas
After leading Los Angeles to the PCL pennant, Dillon signed in December 1903 to play in 1904 with the Brooklyn Superbas of the National League. In January 1904, Dillon attempted to renege on his Brooklyn contract to remain in Los Angeles. However, an arbitration award in March 1904 awarded him to Brooklyn for the 1904 season. Dillon appeared in 135 game as Brooklyn's first baseman in 1904, compiling a.258 batting average and a.313 on-base percentage.
Return to Los Angeles
In March 1905, the Los Angeles club paid $1,700 to Brooklyn for the return of Dillon. The sum paid by Los Angeles was reported to be "the biggest price ever paid by a minor league club for the purchase of a big league player." Dillon helped lead the 1905 Los Angeles club to the PCL pennant. He compiled a.271 batting average in a career high 216 games and 778 at bats during the 1905 season. Dillon remained with the Angels where he served as the player-manager through the 1915 season. He helped lead the Angels to pennants in 1903, 1905, 1907, and 1908. He was released by the Angels at age 42 in late November 1915.