كتب : Omar AbdelAziz
Samuel Eto'o fired Barca into the lead with a 10th minute header and it looked as if Josep Guardiola's team are heading into one of those comprehensive wins.
However, former Mallorca ace Eto'o squandered a host of chances to add to his 29-goal tally and Barca were punished by second-half goals from Juan Arango and Cleber Santana.
Eto'o was not done yet as the Cameroonian missed an injury-time penalty off the post, in what was the last kick of the game.
The defeat put an end to Barcelona's 10-match unbeaten run.
Barca have 86 points at the summit, whereas Mallorca moved up to ninth on 48 points.
Guardiola rested most of his first-team players as the Catalans prepare for the UEFA Champions League final against Manchester United next week.