A native of Northumberland, Cunningham had served in the army during the First World War. He enlisted in the Royal Northumberland Fusiliers during the First World War and later transferred to the Labour Corps. He was awarded the British War Medal and Victory Medal and attained the rank of corporal. Once he returned home, he establishedd himself with Blyth Spartans. Liverpool's interest followed his performances for the North-East club, and he was regarded as a well-built and promising half-back when he arrived at Anfield. The Liverpool Echo described him as being at a "ripe football age" and well recommended when announcing his signing. Rather unusually for a player signed as a half-back, Cunningham operated as a left-winger when he made his debut in the first division fixture with Middlesbrough on 12 March 1921. He then figured on the right wing in the penultimate game of the season, away to Arsenal on 2 May. Both games finished in goalless draws.
Cunningham spent much of his time at Liverpool competing for a place in a strong half-back department and was also used in reserve-team football. His opportunities with the first team were limited, and injuries further disrupted his progress. Cunningham's third and final appearance for Liverpool came the following season, on 18 March 1922, when he replaced left-half Tom Bromilow for the home First Division match against Bolton Wanderers. Liverpool had to do without the services of Bromilow, Harry Chambers and Tommy Lucas as they were curiously playing for the English League versus the Scottish League on the same day. Liverpool lost 2-0, despite being on course to win the First Division championship that season. Although he didn't establish himself in the first team, Cunningham remained on Liverpool's books after his final appearance and subsequently continued his career with Barrow before the beginning of the 1923/24 season.
Cunningham joined Exeter City on a one-month trial in August 1925. He played for the reserves during the 1925/26 season, making his debut in a practice match on 26 August and his Southern League debut four days later against Ebbw Vale. A serious knee injury, which required cartilage to be removed, ended his playing career. After leaving football, Cunningham returned to Northumberland and found work in the coal-mining industry. He also played cricket for Alnmouth Cricket Club and enjoyed golf and billiards. Cunningham was killed on 28 June 1934, aged 34, in an accident at Shilbottle Colliery in Northumberland. He was working as a hewer when he was struck by a fall of stone. Contemporary newspaper recorded that the accident was the first fatality at the colliery for ten years.