Duncan had slugged 1.090 and hit .535 as a high school senior. He won the Gatorade New Jersey High School Player of the Year Award and was a first-team Baseball America high school All-American, joining Brandon Wood and Ian Stewart in the non-1B infield category. The New York Yankees took him with the 27th pick of the 2003 amateur draft and he was signed by scout Cesar Presbott for a $1,250,000 bonus.

After being promoted to the AA Trenton Thunder, Duncan struggled through the season hitting only .235, but set career highs in home runs (19). He had a OBP of .326, slugged .408, struck out 136 times in 451 AB and led the Eastern League's third basemen in errors (27). Baseball America ranked him as the EL's 17th-best prospect.

That fall, Duncan played in the Arizona Fall League and revived his stock. He was in the top 10 of nearly every offensive category - 8th in average (.362), 3rd in homers (8), 4th in RBI (27), 4th in doubles (9) and first in slugging (.734). For his fine hitting for the Grand Canyon Rafters, he was named the league MVP. He was rated the Yankees' #2 prospect by Baseball America.

In 2006, Duncan split time between Trenton and AAA Columbus Clippers. Once again Duncan struggled as he failed to hit over .250 in either league - .209/.279/.255 in 31 games in AAA and .248/.355/.485 in 57 at AA. He was dropped from the top 10 Yankees prospect list by Baseball America going into the 2007 season.

Back in AAA in 2007, Eric hit .241/.323/.389 for the Scranton/Wilkes-Barre Yankees. He would continue to struggle over the next two years with Scranton/Wilkes-Barre with his slash line going down each year until he was declared a minor league free agent after the 2009 season.

In 2010 Duncan signed with the Atlanta Braves and spent the season with the AAMississippi Braves. There he bounced back with a .267/.323/.396. He then moved on to the St. Louis Cardinals organization staying in AA with the Springfield Cardinals. In Springfield he regained his power stroke hitting a career high 22 home runs with a .274 average, his highest average since 2003. For the 2012 season he signed a minor league contract with the Kansas City Royals. In spring training he suffered a torn quadriceps. The injury kept him out of action until May. After 52 games back Duncan announced his retirement in July.