En 2007, Ryan Gregson se classe cinquième du 1 500 mètres des Championnats du monde jeunesse d'Ostrava, compétition mettant aux prises les meilleurs athlètes internationaux de moins de dix-huit ans. Il bat ensuite le record d'Australie junior du 3 000 mètres de Craig Mottram en réalisant le temps de 8 min 01 s 26. L'année suivante, il termine cinquième du 1 500 m des Championnats du monde juniors de Bydgoszcz, puis établit en 2009 de nouveaux record nationaux juniors sur 1 500 m et 3 000 m en respectivement 3 min 37 s 24 et 7 min 57 s 45. Gregson termine au pied du podium des Universiades d'été de Belgrade, échouant à 22 centièmes de secondes seulement de la médaille de bronze. Sélectionné pour les Championnats du monde 2009 de Berlin, il est éliminé dès les séries du 1 500 m dans le temps de 3 min 44 s 79.