Po raz pierwszy na arenie międzynarodowej Jean-Marc Gaillard pojawił się 11 grudnia 1999 roku podczas zawodów Pucharu Kontynentalnego w szwajcarskiej miejscowości Ulrichen, gdzie w biegu na 7,5 km techniką klasyczną zajął 41. miejsce. W 2000 roku wystartował na mistrzostwach świata juniorów w Štrbskim Plesie, ale plasował się daleko poza czołową trzydziestką. W Pucharze Świata zadebiutował 8 grudnia 2001 roku w Cogne, gdzie zajął 80. miejsce w biegu na 10 km stylem klasycznym. Pierwsze pucharowe punkty zdobył 12 stycznia 2002 roku w Novym Měscie, zajmując 24. miejsce na 10 km stylem dowolnym. Gaillard czterokrotnie stawał na podium zawodów PŚ, przy czym już w pierwszym wypadku odniósł swoje jedyne zwycięstwo – 16 lutego 2008 roku w Libercu był najlepszy na dystansie 11,4 km stylem dowolnym. W klasyfikacji generalnej najlepiej wypadł w sezonie 2008/2009, który ukończył na szóstej pozycji. W 2005 roku wziął udział w mistrzostwach świata w Oberstdorfie, zajmując 47. miejsce w biegu łączonym na 30 km. Najlepsze wyniki na imprezach tego cyklu osiągnął podczas rozgrywanych w 2007 roku mistrzostw świata w Sapporo, gdzie był piąty w sztafecie i siódmy na dystansie 50 km techniką klasyczną. Ponadto był piąty w sprincie drużynowym na mistrzostwach świata w Libercu w 2009 roku i szósty w tej samej konkurencji na mistrzostwach świata w Val di Fiemme w 2013 roku. W 2006 roku wystartował na igrzyskach olimpijskich w Turynie, zajmując między innymi jedenasty w biegu na 50 km stylem dowolnym. Na rozgrywanych cztery lata później igrzyskach olimpijskich w Vancouver na tym samym dystansie był dziewiętnasty, a w sztafecie zajął czwarte miejsce. Ponadto w trzeciej edycjiTour de Ski zajął szóste miejsce.
- – zawodnik nie wystartował TdS – Tour de Ski
DNS – Zawodnik został zgłoszony do biegu, ale w nim nie wystartował
DNF – Zawodnik nie ukończył biegu
LPD – Zawodnik został zdublowany