If Saphira chose Eragon, why did it take the dragon so long to hatch for him?
Christopher Paolini answered this question on his recent Facebook AMA.
Why didn't Saphira hatch as soon as Eragon touched the egg?
After so long spent in Galbatorix's clutches -- and after having endured many, many attempts to force her into hatching, Saphira was in no hurry to emerge until she was absolutely sure it was the right choice.
Upon further research, it seems he answered this back in 2010 as well:
I was wondering why Saphira’s egg did not hatch for Eragon for more than a week?
Usually it didn’t take so long for a dragon egg to hatch. However, (and I believe I said this in one of the books) Saphira had been Galbatorix’s captive for so long, she was afraid that Eragon’s presence might have been just another trick. So, she waited just to make sure. Also, I think that, after a century of waiting, Saphira decided to take charge of the situation herself. She wasn’t about to leave her fate solely in the hands of this young farmboy who had found her.
Further research yet shows it answered as far back as 2005.
What took Saphira so long to hatch? She was in Eragon's presence for a while.
She was afraid that it still might be a trap by Galbatorix, who had try to trick her many times before.