Why not all? In this interview with Time, Rowling explains that it was the three of those factors:
Rowling wrote this very carefully, so it could be read two ways. "Did he just go into a state of unconsciousness in which his subconscious tells him everything he needs to know? Dumbledore doesn't tell him anything he couldn't have figured out with some educated guesses." But in her mind, Harry entered a limbo between life and death, and faced a choice about which way to go.
She explains on her website that this encounter involves some very deep laws of magic, which Voldemort himself did not understand: "Having taken Harry's blood into himself, Voldemort is keeping alive Lily's protective power over Harry — except that the power of Lily's sacrifice is a positive force that not only continues to tether Harry to life, but gives Voldemort himself one last chance ... Voldemort has unwittingly put a few drops of goodness back inside himself; if he had repented, he could have been healed more deeply than anyone would have supposed. But of course, he refused to feel remorse." Also, since Voldemort is using the Elder wand, which actually belongs to Harry, neither the Cruciatus or the killing curse work properly. "The Avada Kedavra curse, however, is so powerful that it does hurt Harry, and also succeeds in killing the part of him that is not truly him, in other words, the fragment of Voldemort's own soul that is still clinging to his. The curse also disables Harry severely enough that he could have succumbed to death if he had chosen that path."
Firstly, it was indeed Lily's protection that tethered him to life. It also tethered Voldemort, and had he been sorry for his actions he would've been "healed", and supposedly become a good man. It's also the matter of the Elder Wand, which belonged by right to Harry. It didn't work in full strength, but still sent a curse powerful enough to destroy the part of Voldemort's soul, and almost kill Harry, who chose to come back.