Ignacio Mieres notched two penalties of his own but it was not enough as the Warriors slipped to their tenth defeat in as many league games.
Following a half-hour delay, after the pre-match entertainment saw a giant inflatable ball knock the crossbar from its perch, Jeremy Su'a immediately knocked on Twelvetrees' kick-off.
Seeking to make amends the Warriors scrum-half handled the ball in the resulting scrum, conceding a penalty and giving Twelvetrees the chance to open the scoring, which he did.
But the Warriors bounced back with intent and when former Worcester flanker Matt Kvesic was caught off his feet Mieres levelled things up after six minutes.
The two sides traded blows for the next ten minutes until a lengthy kicking battle broke out, but Mieres ended it by calling mark and finally finding touch.
And the Argentinean fly-half soon looked to put the Warriors ahead for the first time, taking on a 53-metre penalty, but his ambitious effort fell short and wide.
The hosts' back line began to click into gear, with Henry Trinder and Charlie Sharples each well tackled in the Worcester half, but Twelvetrees could not make the pressure count, hooking a penalty well wide after 25 minutes.
However, five minutes before the break Rob Cook's boot took Gloucester deep into the visitors' half and a powerful scrum soon earned another penalty, Twelvetrees making no mistake this time.
Worcester emerged from half-time with renewed vigour, as James Stephenson and Chris Pennell each broke the Cherry & Whites' line inside the first minute.
Twelvetrees missed his second penalty of the match, sending a long effort past the left-hand post, before Jonny May's early tackle on an airborne Mieres left the fly-half requiring treatment.
Alex Grove's neat through ball forced Cook to knock on but after a series of failed scrums referee JP Doyle granted Mieres a penalty, which crept over the crossbar to make it 6-6.
Twelvetrees gave Gloucester a three-point advantage for the third time on the hour mark, after the Warriors were penalised for joining a ruck from the side.
Worcester appeared to switch off after a lengthy stoppage and flanker Richard De Carpentier was sent to the sin-bin for a high tackle on replacement Dan Robson, who had broken with speed.
Twelvetrees kicked the resulting penalty from close range but it was the away side that enjoyed more possession and territory in the following ten minutes.
And a powerful break from replacement scrum-half Paul Warwick almost brought the ultimate reward, but he was stopped inches short of the try line before Gloucester cleared their lines.
It was the hosts' turn to go down to 14 men when May was shown a yellow card for tackling Pennell in the air four minutes from time but they held on for victory.