Des blessures le handicapent au cours des années suivantes. Il ne frappe que 6 circuits et obtient 27 points produits en 76 matchs en 2007 et enchaîne avec une performance de 5 circuits et 32 points produits en 87 parties jouées en 2008, alors que sa moyenne au bâton chute à ,227. Il séjourne alors en ligues mineures avec les Redbirds de Memphis, le club-école des Cardinals[6]. En août, il subit une opération pour soigner une hernie discale[7], ce qui met fin à sa carrière avec les Cardinals. Le , Saint-Louis échange Duncan aux Red Sox de Boston contre Julio Lugo[8]. Cédé au club-école de Pawtucket, Duncan n'est pas rappelé par Boston et libéré un mois plus tard. Il tente en 2010 un retour vers les majeures mais est confiné aux ligues mineures dans l'organisation des Nationals de Washington[6].
Chris Duncan a disputé 389 parties, toutes avec Saint-Louis, en 5 ans dans le baseball majeur. Il compte 295 coups sûrs, 55 doubles, 55 circuits, 175 points produits, 164 points marqués et sa moyenne au bâton s'élève à ,257.