Edwards is the fifth of six children born to Dennis (1956-2012) and Anne Edwards (b. 1955). He was named after the West Indian cricketer George Headley. He came through the ranks of Surrey, making his first-class debut in 2011 against Cambridge MCCU. He was selected for an ECB training camp in February 2013.
Edwards along with Jack Winslade was released by Surrey towards the end of the 2014 season, with the agreement they could join the MCC Young Cricketers for the 2015 campaign. However, in November 2014 Edwards signed a two-year deal with Lancashire.