A near-capacity crowd in the 85,000-seat Borg El Arab Stadium in Alexandria saw the June signing from AS Roma strike just six minutes into the Group E clash.
Salah sneaked behind the defence and after goalkeeper Denis Onyango parried his first attempt, he poked the rebound into the net to decide the top-of-the-table showdown.
It was the first goal conceded by Uganda in 456 minutes of qualifying for the 2018 World Cup in Russia after five consecutive clean sheets.
Egypt created most of the chances only to be regularly thwarted by 2016 Africa-based Footballer of the Year Onyango.
The Pharaohs host bottom team Congo Brazzaville in October and visit third-place Ghana in November and two victories will ensure they qualify.
Atletico Madrid midfielder Thomas Partey scored a hat-trick as Ghana kept faint hopes of a fourth straight World Cup appearance alive with a 5-1 thrashing of Congo in Brazzaville.
Egypt have nine points after four rounds, Uganda seven, Ghana five and Congo just one.
Although Egypt have been the dominant African football force, winning the Cup of Nations a record seven times, they consistently struggle in the World Cup, qualifying only twice.
Leaders Ivory Coast suffered a shock 2-1 home defeat by Gabon in Group C, but the damage was lessened by second-place Morocco only drawing 0-0 with Mali in Bamako.
Axel Meye and recent Southampton recruit Mario Lemina scored within 10 minutes during the first half for the Gabonese, who crumbled 3-0 at home to the Ivorians three days ago.
Maxwel Cornet halved the deficit on 56 minutes, but the Elephants could not find an equaliser in Bouake.
Ivory Coast have seven points, Morocco six, Gabon five and Mali two, with the final-round clash of the top two nations set to decide who goes to Russia.
- Senegal thwarted -
South Africa were another team to suffer a shock home defeat, losing 2-1 to Cape Verde for the second time in five days, this time in Indian Ocean city Durban.
Garry Rodrigues scored twice in the second half, from a free-kick and a shot outside the box, before substitute Andile Jali snatched a late consolation goal.
Defeat dropped the South Africans to the bottom of Group D, which is headed by Burkina Faso after a dramatic 2-2 draw with Senegal in Ouagadougou.
Bertrand Traore gave the Burkinabe an early lead only for a goal in each half from Ismaila Sarr and Liverpool star Sadio Mane to turn the tide.
But substitute Senegal goalkeeper Pape N'Diaye conceded an own goal in the final minute of regular time to keep Burkina Faso on top of a tight table.
They and Cape Verde have six points, Senegal five and South Africa four with two matchdays remaining.
Tunisia retained a three-point lead over the Democratic Republic of Congo in Group A after coming from two goals behind in Kinshasa to salvage a 2-2 draw.
Goals from captain Chancel Mbemba and Paul Jose Mpoku had put the Leopards in control soon after half-time, but they fell apart in the closing stages.
Wilfred Moke conceded an own goal and Anice Bardi levelled two minutes later.
Tunisia have 10 points, DR Congo seven and out-of-contention Guinea and Libya three.
Captain Kennedy Mweene saved a Riyad Mahrez penalty as second-place Zambia beat Algeria 1-0 in Constantine to close the gap behind Group B leaders Nigeria to three points.
Patson Daka, a key figure in the Zambian 2017 African U-20 Cup of Nations-winning team, scored the only goal midway through the second half.