Weir se retiró de la Final del Grand Prix antes del programa libre debido a una lesión en la cadera que sufrió en una caída durante el programa corto. En el Campeonato de EE.UU. de 2007, Weir calificó en el segundo lugar en el programa corto, menos de un punto detrás de Evan Lysacek. En el programa libre, no pudo completar su triple axel, tropezó en un triple loop y duplicó varias de sus combinaciones con el fin de obtener más puntos. También intentó realizar un loop cuádruple pero no logró aterrizar correctamente. Weir perdió su título nacional y terminó en el tercer lugar. En el Campeonato Mundial, Weir quedó octavo.