An early strike by Celtic’s Jack Laird condemned Town to their first defeat in eleven matches.
Town’s opening attack saw home keeper Alex Cairns claim the ball, then launch a long clearance the length of the field.
Craig MacGillivray blocked Laird’s initial touch,but the striker reacted quickly to roll the rebound into the empty net.
Town were struggling to hold Celtic’s early onslaught,and the unmarked Kristian Platt was on hand to head Adam Pepper’s corner just over the bar.
Mitchell Austin’s cross found Corey Gregory, but a superb close range by MacGillivray thwarted the Celtic forward.
Dave Merris and Adam Bolder quickly found their way into the over officious referee Parry’s book, before Town suffered another blow when Shane Killock
limped off after ten minutes with a pulled hamstring.
Town began to come into the match and series of headers set up Chib Chilaka, whose shot on the turn whistled narrowly wide.
After two attempts by Celtic’s Corey Gregory went close, Town ended the half in the ascendency.
A Paul Bolland header from Luke Dean’s cross went just wide and then Dean himself burst through the middle, but fired straight at Cairns.
Town bossed the second period, mounting a series of attacks on the home goal.
Alan White headed wide from a Merris corner and Cairns made the save of the match to keep out Jonny Allan’s header from another Merris cross.
Celtic posed a constant threat on the break and Laird squared to Pepper who shaved the upright with a tremendous drive, before MacGillivray dived full length to turn Mitchell Austin’s shot round the post.
Liam Hardy and Adam Nowakowski replaced Lee Elam and Luke Dean,and Town prompted by midfield general Adam Bolder, went all out for the equaliser.
Celtic defended desperately;a point blank shot by Chilaka was somehow blocked and Nowakowski rose high above the home defence to head Hardy’s centre inches over.
But it wasn’t to be for Town and Celtic held out for a narrow victory.
Harrogate Town 1 MacGillivray 2 Samuels 3 Merris 4 Bolder 5 White 6 Killock (Bloomer 10) 7 Bolland (c) 8 Dean (Nowakowski 76) 9 Chilaka 10 Allan 11 Elam (Hardy 60)
Unused subs 14 Osborne,18 Da Veiga Bookings Merris,Bolder,Allan