The reason Sherlock's solution to the Fall still leaves gaps (as Anderson points out at the end of TEH) is that it's all a fabricated excuse.
What actually happened is that Sherlock fell, and Sherlock died.
He was a ghost when he saw John at the cemetary. When he says to John "I heard you," and refuses to answer how he survived the Fall, it's because he didn't.
Instead he made a deal with the Devil. In order to get back to John he sold his soul for another 10 years of living, after which he's going straight to the hot place for an eternity as a demon's chew-toy. (Which explains his miraculous recovery after being shot in HLV. His time wasn't up yet so he got punted straight back into his body. it's also why he wasn't overly concerned about being sent off on a suicide mission by Mycroft.)
Go as angsty or not as you like. Maybe Sherlock sold his soul to be with John only to find John had moved on. Or maybe Sherlock worked so hard to help Mary because he knew John would need someone after Sherlock's time was up and he wanted to make sure that he left no unfinished business.
Deal with the Devil (spoilers for season 3)
What actually happened is that Sherlock fell, and Sherlock died.
He was a ghost when he saw John at the cemetary. When he says to John "I heard you," and refuses to answer how he survived the Fall, it's because he didn't.
Instead he made a deal with the Devil. In order to get back to John he sold his soul for another 10 years of living, after which he's going straight to the hot place for an eternity as a demon's chew-toy. (Which explains his miraculous recovery after being shot in HLV. His time wasn't up yet so he got punted straight back into his body. it's also why he wasn't overly concerned about being sent off on a suicide mission by Mycroft.)
Go as angsty or not as you like. Maybe Sherlock sold his soul to be with John only to find John had moved on. Or maybe Sherlock worked so hard to help Mary because he knew John would need someone after Sherlock's time was up and he wanted to make sure that he left no unfinished business.