The deadlock was broken as Junior Messias’ long-range freekick evaded everyone in a crowded box and nestled into the bottom corner.
Crotone were awarded a penalty after Adama Soumaoro dragged Samuel Di Carmine down from a corner, and Simy made no mistake to double the advantage.
Bologna dominated the second half and halved the deficit when Palacio flicked the ball across the face of goal for Soumaoro to tap in on the hour mark.
The Rossoblu then drew level through a stunning Jerdy Schouten strike, as the Dutchman rifled into the top corner from outside the box.
However, the comeback was completed with six minutes remaining as Andreas Skov Olsen pounced on Cordaz’s parry to prod home and seal all three points for Bologna.
With just seconds remaining, Crotone had the ball in the net once more, only for Emmanuel Riviere to be ruled offside as he tapped in and the hosts were condemned to defeat.