Michael Lang scored a late winner to secure three points for Basel and stop Manchester United from winning Group A on Wednesday night.
Lang tapped in from close range after great work from Raoul Petretta to ruin United's previously perfect record in the Champions League.
United went closest in the first half through Marouane Fellaini and Marcos Rojo, both of whom hit the woodwork in an otherwise drab but physical opening 45 minutes.
Anthony Martial also had a chance for the Red Devils, testing Tomas Veclik with a chipped shot after being sent scampering through on goal.
Basel had struggled to create chances in the first period but grew in confidence after the break, with Mohamed Elyounoussi and Serey Die seeing ambitious shots fail before Renato Steffen went close, whistling an effort just wide of Sergio Romero's goal.
Lang hit the bar with a header after besting Daley Blind aerially before United's defence scrambled clear.
The hosts also saw a decent shout for a penalty turned down after Steffen tumbled under the challenge of Rojo, who then denied Dimitri Oberlin from close range with a well-timed block.
Zlatan Ibrahimovic's introduction from the bench was an indication of Mourinho's intention to win the game, the Swede partnering Lukaku up front, but the substitute failed to influence the game during his cameo.
However, it was Lang who popped up in the 89th minute with the match's most important moment, passing into an empty net to give Basel real hope of qualifying for the knockout stages.
United remain favourites to win the group, needing just a point from their last match against CSKA Moscow in December.
Basel XI: Vaclik, Akanji, Suchy, Balanta, Lang, Serey Die, Zuffi, Petretta, Steffen, Oberlin, Elyounoussi
Manchester United XI: Romero, Darmian, Smalling, Rojo, Blind, Herrera, Fellaini, Lingard, Pogba, Martial, Lukaku