Sonic saw Eggman's ship crash. Silver (from the Future) was there too. Knowing they could prevent that event from happening, they used the Chaos Emeralds to rewrite history, with Sonic traveling back in time long enough to save the princess's life. And that's how the future is changed.
That's what happened. Does that explain how it's possible, no.
It could even be something like, Sonic wasn't close enough to the ship crashing to see himself saving Elise, so history was never changed.
Or take it further. When Sonic died, his body and his friends were transported to... i'm assume it was a space that was out of traditional space & time, that allowed Sonic to get revived and defeat Solaris, effectively changing time. Two Chaos Emeralds was used in the game to travel through time, so, Super Sonic powered by seven emeralds could have more time applications than just traveling through time.
I try not analyzing the time traveling plot of the game. The plot of the game itself is rush and unpolished, with The "Scepter of Darkness" being referred to at times in game as the "Book of Darkeness."
Realistic answer: Sonic 06 had a lot of unfinished plot and concept for being a rush game that the developers were just focusing on making it completable towards the end of development and couldn't spare "time" to iron out plot details.
Fun answer: Solaris used its powers to break the game itself.
