Meanwhile Glenavon fought back from 3-1 down to beat Ballymena 4-3
Crusaders have restored their 7-point lead at the top of the Dankse Bank Premiership following a 4-2 comeback victory against Ards in Bangor on Tuesday night.
The champions had been 2-0 down after 17 minutes - before Paul Heatley kick-started the revival with the first of his two goals.
The scorer of Ards' first goal Craig McMillen was dismissed in the closing stages.
Coleraine beat second-placed Linfield 1-0 - the Bannsiders' first league win at Windsor Park for seven years.
Blues captain Jimmy Callacher was sent off in the first half and is now suspended for Saturday's big Irish Cup clash against Glentoran at the Oval.
Jordan Allan headed the winning goal at Windsor 15 minutes from time.
It was a dream start to striker Eoin Bradley's second spell at Coleraine after rejoining the club this week from Glenavon.
The 33-year-old has also been speaking to Q Radio Sport about his return to the Showgrounds.
Goalscorer Allan told us he enjoyed linking up with Bradley.
The 21-year-old Glaswegian is on loan from Derry City, the deal expires this month but negotiations are continuing to keep him at Coleraine.
Another of the young stars on the Coleraine team this season has been former Southampton and Northern Ireland under-21 goalkeeper Chris Johns, son of former Ireland rugby international Paddy Johns.
He says it wasn't his busiest night of the season and the victory at the National Stadium was well-deserved.
In the other games, Greg Moorhouse hit a hat-trick as Glenavon beat Ballymena 4-3 at the Showgrounds, fighting back from 3-1 down to clinch victory.
Fra McCaffrey scored twice for the Sky Blues and was then sent off.
Glentoran thrashed Portadown 5-0 at Shamrock Park with Curtis Allen striking twice while Nacho Novo, Chris Lavery and Jonathan Smith also hit the target.
Cliftonville and Carrick at Solitude finished scoreless.
A stoppage time goal from teenage substitute Niall Owens gave Ballinamallard a two-all draw at Dungannon.
The Mallards' other scorer Adam Lecky was red-carded two minutes from the end of his last game before going to Australia for a year.