Training at the Australian Institute of Sport, Harrison made his international debut at the 1999 Pan Pacific Swimming Championships in Sydney, where he won a silver medal in the 100-metre breaststroke and came fourth in the 200-metre breaststroke. The following year he finished second at the Australian Championships behind Ryan Mitchell, earning himself selection for the Sydney Olympics.
At the Olympics, he finished fourth in the 200 m breaststroke, just 0.15 of a second slower than the bronze medal winner. After Australia's only 100-metre breaststroker Phil Rogers put in a poor performance in the individual event, Australian head coach Don Talbot gambled on Harrison to replace Rogers, even though he was not originally selected in the 100-metre breaststroke. Harrison combined with Matt Welsh, Geoff Huegill and Michael Klim to claim silver, behind the United States who broke the world record.
At the 2001 Australian Championships, Harrison won gold and silver respectively in the 200-metre and 100-metre breaststroke to qualify for the 2001 World Aquatics Championships in Fukuoka, Japan. He came sixth and 20th in the 200-metre and 100-metre respectively, despite setting an Australian record in the 200-metre event. He combined with Welsh, Huegill and Ian Thorpe to win gold in the 4×100-metre medley relay. Harrison had a poor year in 2002, managing only seventh in the 200-metre breaststroke at the 2002 Commonwealth Games in Manchester, and being dropped for the 100-metre event and the medley relay. He won gold and silver in the 100-metre and 200-metre breaststroke at the 2003 Australian Championships, but continued to decline, finishing outside the top twenty in both events at the 2001 World Aquatics Championships in Barcelona, Spain. At the 2004 Summer Olympics, Harrison was eliminated in the heats of the 200-metre breaststroke. He retired after the Games. After retirement he began swimming recreationally with Ginninderra Marlins.