Betis did take the lead in the 22nd minute when Roque Santa Cruz fired in from the edge of the penalty area.
Jefferson Montero saw his long-range effort go wide before Castro's fizzing effort came back off the crossbar.
Gijon were reduced to ten men just before the break as Alberto Lora Ramos picked up his second yellow card for a foul on Montero.
Castro had a number of opportunities to seal the win for Betis after half time.
His shot on the hour crept narrowly wide, while his attempt to chip Colinas was collected easily by the keeper.
Substitute Joege Molina wrapped up the points in injury time when he dinked the ball over the oncoming Colinas.
The visitors' misery was compounded in the final moments when Carmelo Gonzalez was dismissed for his second bookable offence.