After beginning his career in his native city Cork with local club Avondale, he made the switch to Scotland in 2012 signing youth forms with Celtic.
In 2016 he made a loan move to Scottish League One side Peterhead, making his debut in a Betfred Cup victory over Dundee. His first career goal came in a defeat to Livingston in October 2016, scoring again a week later against Airdrieonians. Kelleher totalled 25 appearances scoring three goals.
In 2017 he moved south and signed with Oxford United. He moved out on loan quickly signing for Solihull Moors with whom he made his debut in English football in a game against Leyton Orient in the National League. He scored his first goal in England a week later against Boreham Wood.
The following season he joined Macclesfield Town on loan making his EFL debut in a 3-2 loss to Swindon Town in August 2018. After impressing with the Silkmen in League Two he signed permanently in 2019, being named captain of the side aged just 23.
In the 2019/20 season Kelleher was awarded the Player of the Season Award making 40 appearances before the season was cut short.
After financial turmoil at Moss Rose, Kelleher joined Wrexham on a one-year contract in September 2020. He made his Wrexham debut on the opening day of the 2020/21 season in a 2-1 win over Boreham Wood. His first goal for the Dragons came in January 2021 in a 3-1 win over Dover Athletic.