Dan Parks had the chance to seal what would have been a tremendous turnaround victory in the final moments but his kick curled agonisingly wide of the posts at the last minute and Ulster escaped.
The Warriors started with the same XV that ran six tries in against Llanelli two weeks ago while Ulster, aiming to bounce back from a narrow defeat by the Ospreys, shuffled their pack to restore Ireland flanker Stephen Ferris on the blindside.
And it was Ferris who took the ball into contact near the halfway line inside the first couple of minutes to win a penalty that allowed full-back Clinton Schifcofske to have a pot shot from 50 yards, but it just slipped wide. Then it was the turn of the Glasgow forwards to win a penalty 45 metres out. The attempt by full back Colin Gregor was even closer to the posts but still wide. His forwards took him 20 metres closer, won another penalty at a ruck, and this time Gregor made no mistake to put the first points on the board.
Seven minutes of disjointed play in midfield with dodgy handling and aimless kicking ended with Schifcofske getting a second attempt at goal from 40 metres to even things up.
Glasgow winger Thom Evans injected some life into the game with a dangerous darting run but his team-mates seemed to have wasted the field position he created by holding on in the tackle until the award was reversed after the intervention of the touch judge who saw an offence by Italian lock Carlo Del Fava. Gregor gratefully slotted his second penalty of the night.
A spate of penalties frustrated the players and when Glasgow wouldn't give the ball back the referee marched them a generous ten metres forward to bring Schifcofske within range and he duly squared the match.
Max Evans made a line break and, as Ulster scrambled to defend, the ball went left across the pitch and back again in a move that was abruptly stopped in its promising tracks when stand-off Ruaridh Jackson attempted a drop goal that missed the target by a wide margin.
The crowd were getting restless as tighthead prop Moray Low was sin-binned for handling in the ruck, allowing Ulster to kick for the line-out in the corner. Del Fava won it and although the Warriors' defence held firm through a series of set scrums, Ulster finally managed to breach their line when flanker Dave Pollock took the crash ball at an unstoppable angle. Schifcofske converted.
Fourteen-man Glasgow were desperate for the half time whistle but before it came Ulster hit them with another try as left winger Andrew Trimble had the simplest task to finish when the ball came to him after passing through the hands of the back line.
Now it was Ulster hoping for the break as loosehead prop Bryan Young was yellow carded. With time running out, Gregor tried to thump over a kick from five metres inside his own half. It fell well short.
With Low restored to the front row Glasgow started the second 40 brightly as first scrum-half Mark McMillan and then openside John Barclay carved holes in the Ulster defence and a poor clearance kick let the home side run it straight back with Magners League top try scorer Thom Evans taking it over the line. Gregor converted.
The balance of play had suddenly tilted in Glasgow's favour and Lome Fa'atau was next to cause flutters of panic among the visitors as he slipped through some tackles. Ulster freshened up by throwing on a couple of replacements and managed to escape from their 22 and relieve the pressure, but the cutting edge that created their brace of tries eluded them.
The crowd was howling in protest at some of the referee's more opaque decisions as Bernardo Stortoni came on at full-back with Gregor moving to scrum-half. Glasgow had the momentum as Ulster lost their shape but not their discipline, and they kept making the crucial tackles to keep the Warriors at bay.
As the game went into its final quarter, Parks came on for Jackson and was immediately presented with an easy 20-metre penalty.
Then, when hooker Rory Best was penalised for delaying the throw and Ferris fumbled a simple pass in midfield, it looked as if Ulster would be overwhelmed by wave after wave of Glasgow attacks.
Ian Humphreys was next in the sin bin for petulantly kicking the ball away but the remaining white shirts fought back until Parks banged over a penalty to get within one point with five minutes to go.
Ulster refused to panic and tried to retain possession to close out the game but they went in at the side trying to protect the ball and Glasgow surged forward again, only for Fa'atau to be brought down a metre short.
There was to be no try for all their efforts, but Parks stepped up from 25 metres out wide on the left and the ball seemed to be on its way to clinch the victory before it swerved inches wide at the last moment.
Scorers. Glasgow: Try: T Evans. Con: Gregor. Pens: Gregor 2, Parks 2. Ulster: Tries: Pollock, Trimble. Cons: Schifcofske 2. Pens: Schifcofske 2.
Glasgow: C Gregor; L Fa'atau, M Evans, G Morrison, T Evans; R Jackson, M McMillan; K Tkachuk, D Hall, M Low, T Barker, A Kellock, J Eddie, J Barclay, K Brown. Subs: F Thomson, J Va'a, D Turner for Barker 45, C Forrester for Barker 62, D Parks for Jackson 60, A Henderson, B Stortoni for McMillan 50.
Ulster: C Schifcofske; S Danielli, I Whitten, P Wallace, A Trimble; N O'Connor, P Marshall; B Young, R Best, B Botha, C Del Fava, R Caldwell, S Ferris, D Pollock, R Diack. Subs: N Brady, D Roach, M McCollough for Del Fava 72, C Henry, I Boss for Ferris 72, D Cave, I Humphreys for Danielli 41.
Referee: G Morris.