Perpignan (3) 23
Irish flanker Kieran Roche had to leave the field after a confrontation with Perry Freshwater
Tries: Manas, Hines
Cons: Rosalen, Porical
Pens: Rosalen (3)
London Irish (3) 6
Pens: Hewat (2)
London Irish came away pointless from the Stade Aime Giral but remain a point ahead of Perpignan at the top of Pool One ahead of the final two rounds.
The first half ended level after scores from Cedric Rosalen and Peter Hewat before the decisive score on 56 minutes through winger Christoph Manas.
The fly-half added a penalty and added the extras for Nathan Hines's late try.
Exiles flanker Kieran Roche had to go off with a fractured cheekbone after he was struck by Perry Freshwater.
Perpignan handed World Cup winner Percy Montgomery his full debut, although a knee injury meant the full-back handed kicking duties to Rosalen, who slotted over 11 points.
After a particularly indifferent first half in the snow, the game sprang to life after the interval when Exiles centre Delon Armitage was sent to the sin-bin for a high challenge on Adrien Plante on 47 minutes.
And Perpignan profited with their numerical advantage when Manas collected Rosalen's pass to score under the posts.
The hosts began to dominate and Scotland international Hines crossed over minutes before the final whistle after a powerful rolling maul instigated by the Perpignan forwards.
London Irish director of rugby Brian Smith:
"There were two key moments in the game for us - one was when Perry Freshwater took Kieran Roche out of the game. Losing him in the line-out was crucial.
"The second was the Armitage yellow card and the resulting soft try. A seven-point gap that late in the game was always going to be tough to come back from.
"As far as Roche is concerned, he's gone to hospital. He's currently blind in his left eye. The touch judge clearly didn't have a good view, but the citing commissioner will no doubt review it."
Perpignan full-back Percy Montgomery:
"I'm really pleased for the team that we got the victory - it's really important for us, considering our results in the last few weeks. "We played a smart match. We stuck to the basics and chose the right game-plan of intelligent kicking and good defence."
Perpignan: Montgomery; Manas, Aramburu, Grandclaude, Plante; Rosalen, Cusiter; Freshwater (capt), Guirado, Pulu, Olibeau, Hines, Britz, Chouly, Kairelis.
Replacements: Ladhuie, Mas, Vilaceca, Geli, Durand, Meyer, Porical.
London Irish: Hewat; De Vedia, D Armitage, Mapusua, Tagicakibau; Catt, Richards; Dermody, Paice, Skuse, Kennedy, Casey (capt), Roche, Danaher, P Murphy.
Replacements: P Murphy, Mackie, Lea'aetoa, Thorpe, S Armitage, Hodgson, Geraghty.