Why would Hades allow Heracles to rescue Theseus after he and Pirithous came down to kidnap Persephone?
According to Diodorus Siculus, it was Herakles favour of Theseus that persuaded Hades to release him:
Peirithoos now decided to seek the hand of Persephone in marriage, and when he asked Theseus to make the journey with him Theseus at first endeavoured to dissuade him and to turn him away from such a deed as being impious; but since Peirithoos firmly insisted upon it Theseus was bound by the oaths to join with him in the deed. And when they had at last made their way below to the regions of Haides, it came to pass that because of the impiety of their act they were both put in chains, and although Theseus was later let go by reason of the favour with which Herakles regarded him, Peirithoos because of the impiety remained in Haides, enduring everlasting punishment; but some writers of myths say that both of them never returned.
Source: Diodorus Siculus, Library of History 4.63.4 (trans. Oldfather)
Pseudo-Apollodorus tells more or less the same story, but doesn't attempt to explain why Theseus is allowed to leave:
As he approached the gates of Haides' realm, he came across Theseus along with Peirithoos (Pirithous), who had courted Persephone with matrimonial intentions and for this reason was held fast as was Theseus. When they saw Herakles they stretched forth their hands as if to rise up with the help of his strength. He did in fact pull Theseus up by the hand, but when he wanted to raise Peirithoos, the earth shook and he let go.
Source: Pseudo-Apollodorus, Bibliotheca 2. 124 (trans. Aldrich)
A third version, Plutarch's, diverges significantly from the earlier ones by substituting Hades with the legendary Molossian Aidoneus. However, it agrees with Diodorus in that Herakles favour is the reason Theseus is released:
[Theseus] to return the service of Peirithoos, journeyed with him to Epiros, in quest of the daughter of Aidoneus the king of the Molossians. This man called his wife Phersephone, his daughter Kora, and his dog Kerberos, with which beast he ordered that all suitors of his daughter should fight, promising her to him that should overcome it. However, when he learned that Peirithoos and his friend were come not to woo, but to steal away his daughter, he seized them both. Peirithoos he put out of the way at once by means of the dog, but Theseus he kept in close confinement
Now while Herakles was the guest of Aidoneus the Molossian, the king incidentally spoke of the adventure of Theseus and Peirithoos, telling what they had come there to do, and what they had suffered when they were found out. Herakles was greatly distressed by the inglorious death of the one, and by the impending death of the other. As for Peirithoos, he thought it useless to complain, but he begged for the release of Theseus, and demanded that this favour be granted him. Aidoneus yielded to his prayers, Theseus was set free, and returned to Athens, where his friends were not yet altogether overwhelmed.
Source: Plutarch, Life of Theseus 31.2 & 35. 1 (trans. Perrin)
I think it's safe to say Theseus was lucky to have friends in high places. Further, I think it's important to remember that Pirithous was the one that lusted after Persephone, and that - at least according to Diodorus - Theseus tried to change his mind. The intervention of Herakles is certainly important, but I don't think Hades would have been as easily convinced if it was Theseus who had dared claim his wife.
All that said, it may be worth noting that there's a version of the story - also in Diodorus - where Herakles is allowed to save Pirithous as well:
Herakles then, according to the myths which have come down to us, descended into the realm of Haides, and being welcomed like a brother by Persephone brought Theseus and Peirithoos back to the upper world after freeing them from their bonds. This he accomplished by the favour of Persephone, and receiving the dog Kerberos in chains he carried him away to the amazement of all and exhibited him to men.
Source: Diodorus Siculus, Library of History 4.26.1 (trans. Oldfather)