Born in Bridport, Dorset, Gibson started his career as a youth team scholar at Aston Villa in July 1976, and turned professional after he played in the 1978 FA Youth Cup defeat to Crystal Palace. After making his debut against Bristol City on 18 November 1978, he broke into the first team in a Ron Saunders side narrowly missing out on European qualification in 1978–79 and 1979–80. He faced competition from Gary Williams, Mike Pejic, and Eamonn Deacy for the left-back spot. He went on to make 21 appearances in the 1980–81 season, as the "Villans" were crowned First Division champions. He then played at Wembley in the 1981 FA Charity Shield, as Villa shared the trophy after a 2–2 draw with Tottenham Hotspur. In the 1981–82 campaign, he featured in both legs of the European Cup wins over Icelanders Valur and German side Berliner FC Dynamo, but remained on the bench for the 1982 European Cup Final victory over Bayern Munich at De Kuip. He took the trophy out on a night of drinking with Gordon Cowans and lost it, before it was returned to him the following day by police officers. He featured in both legs of Villa's 1982 European Super Cup victory over Barcelona, as Villa overturned a 1–0 defeat at the Camp Nou to claim an extra-time victory at Villa Park. Tony Barton's side went on to reach the quarter-finals of the European Cup in 1982–83, where they were knocked out by a Juventus side fronted by Michel Platini. This was the end of the club's glory years, as they could only manage tenth place league finishes in 1983–84 and 1984–85.