Everton were condemned to a Boxing Day defeat as Bojan's penalty settled an incident-packed encounter at Goodison Park.
The 38th-minute spot-kick winner came after the fit-again James McCarthy was punished for a coming together with the goalscorer in the box - but arrived in the wake of Jonathan Walters receiving only a booking for felling Leighton Baines when seemingly the last man.
Everton also lost goalkeeper Tim Howard and skipper Phil Jagielka to injury at half-time, while Kevin Mirallas - himself back after a muscle problem - saw an early penalty appeal turned away.
There had been good news in the build-up as Roberto Martinez was able to hand John Stones his first action since early October.
The centre-half came in for Sylvain Distin, while Muhamed Besic and Samuel Eto'o made way for McCarthy and Mirallas.
And it was the latter who felt he might have had more inside the first minute after he was first dragged back by his marker and then tripped inside the box. Referee Lee Mason saw differently and waved play on.
The first of what would prove a succession of stoppages arrived five minutes in when Romelu Lukaku was involved in an innocuous but nasty clash of heads with Ryan Shawcross.
When play resumed, another disruption swiftly followed. A Glenn Whelan sliding challenge robbed Stones of possession on the halfway line and set Bojan through on goal. The Spaniard slipped it to Mame Diouf charging forward to his right, but Jagielka got back to block the striker's first attempt before Howard comfortably dealt with the second.
More worrying than the threat on goal was the sight of Stones laid out on the halfway line clutching the same left ankle he'd injured at Manchester United in October. To the relief of a packed house of Evertonians, the 21-year-old clambered to his feet and - after a few tentative steps - was able to continue.
Ten minutes more and there was another scare, this time after Jagielka tumbled over a mix of Leighton Baines and Walters after winning a ball in the air. More hobbled walking, more bated breath, but, like Stones, the skipper was able to continue.
As a side-plot, Ross Barkley was back and forth to the sidelines during breaks of play receiving treatment to a bloodied nose, while Shawcross, injured in the collision with Lukaku, was now playing with a bandaged head for Stoke. A Gareth Barry challenge then left Marko Arnautovic writhing in agony. He, too, shook off his pain.
But the tackles continued to fly and just before the half-hour mark, Steven Naismith was punished for tripping Bojan. It was the Scot's fifth league booking of the season. He sits out Sunday's trip to Newcastle.
After all the stops, starts and stutters, the game needed a Boxing Day boost.
On 32 minutes, Mirallas did his best to get the crowd lifted but saw his effort from the edge of the box deflected agonisingly wide to goalkeeper Asmir Begovic's right. From the resulting corner, Barry looked poised to net at the back post, only to see Marc Muniesa get there first and hook the ball away from danger.
Then came a two-minute spell that defined the game.
Put through on goal by Barry, the marauding Baines was sent crashing to the turf by last man Walters. Referee Mason decided the challenge was only worthy of a yellow, much to the obvious frustration of both the fans and players in blue.
From the free-kick, Mirallas could only find the wall and Stoke broke. Bojan got into the box down the left, the Spaniard's legs got entwined in McCarthy's and Mason pointed to the spot. Bojan dusted himself off, side footed the ball to Howard's right and narrowly squeezed his effort between the American's glove and post.
Frustrated, Everton swarmed forward at Stoke and Naismith - stripped of his QPR 'strike' by the Dubious Goals Panel last week - saw his header desperately nodded off the line by Steven Nzonzi.
Teed up by the Scot, Mirallas then hooked an effort wide late on in 10 minutes of first-half added time.
A blow, it wasn't the only one. After punting a long ball forward at the end of the first half, Howard was seen holding the calf of his standing left leg. He didn't emerge for the second half.
Neither did Jagielka, the skipper apparently suffering the affects of that earlier blow. Joel Robles and Antolin Alcaraz were the men sent on in their place.
Despite the enforced changes, the better chances continued to fall Everton's way. Barkley went for placement with a shot but arrowed his effort wide; Alcaraz headed a Baines corner high over the crossbar. From the edge of the box, Baines himself then forced Begovic into a low diving save with a right-foot drive.
Yet, Stoke rode it out and, eyeing victory on his former stomping ground, Mark Hughes sent on midfielder Charlie Adam in place of the goalscorer Bojan with 24 minutes remaining.
In response, Martinez did the opposite, withdrawing the returning McCarthy and throwing Eto'o into the attack.
And the Cameroonian almost manufactured a late equaliser for Naismith too, only to see Muniesa again came to the visitor's rescue.
Everton have little time to lick their wounds. Newcastle are up next on Sunday.