Gameiro struck after 77 minutes to end Sociedad's two-match winning run as Unai Emery's Red and Whites moved up a place in the Primera Division table to seventh.
Jagoba Arrasate's side, who were unfortunate to come away with nothing after enjoyed a dominant display after the break, remain in sixth.
The visitors had the first real chance of the game after 15 minutes when Antoine Griezmann was unlucky to see his close-range header sail inches wide of the post.
Jose Antonio Reyes had a shot on target for Sevilla moments later but he too fired just wide from the centre of the goal as both sides began to settle in.
Reyes came close again midway through the first half but this time the crossbar got in his way as the home side pressed for an opener.
Sevilla continued to attack the visitors' goal and Carlos Bacca was next to have a go but sent his effort over the bar.
Just before the break Sociedad goalkeeper Claudio Bravo was called into action as he made a brilliant save to keep out Reyes' close-range header.
Gorka Elustondo's inswinging corner forced a punch clear from Sevilla's Antonio Beto not long after the break and just after the hour mark Inigo Martinez's long-range strike from the right sailed over the bar.
Ivan Rakitic's free-kick forced Bravo into another big save but 10 minutes later it was his Sevilla team-mate Gameiro who broke the deadlock as he picked up Bacca's cross on the left of the box and tucked home a close-range shot.
Gameiro came close to adding a second five minutes later but Martinez put in a great block to deny him.