All perfect praise be to Allaah, The Lord of the Worlds. I testify that there is none worthy of worship except Allaah and that Muhammad is His slave and Messenger.
Abdullaah ibn Sa’d ibn Abi As-Sarh was one of the writers of the Revelation for the Prophet and then he apostated, so his blood became lawful to be shed because of his apostasy, along with some other people. Afterwards, he repented and re-embraced Islam, and ‘Uthmaan sought intercession for him so that the Prophet would accept his pledge of allegiance. However, the Prophet delayed in accepting his pledge of allegiance, and he finally accepted his pledge. He clarified that he delayed so that one of the Companions would stand and smite his neck. The Companions apologized and explained that they did not understand that that was what he wanted and that if he had signaled to them by winking with his eye, they would have understood and killed the man. Thereupon, the Prophet clarified to them that it is not proper conduct for prophets to have a deceit of the eye (to wink).
However, what happened here does not contradict the two ahaadeeth that you mentioned in the question because the Prophet did not do that to take revenge for himself or because he did not want to choose what was easier. Rather, the seriousness of what ‘Abdullaah ibn Abi as-Sarh had done is what led the Prophet to make things difficult for him.
Al-Khattaabi said in Ma’aalim as-Sunan, “‘Abdullaah ibn Abi As-Sarh was writing the revelation for the Prophet and then he apostated; it is for this reason that the Prophet made it more difficult for him than for other polytheists.”
The benefits that could be derived from this hadeeth are as follows: the prohibition of deceit of the eye, and that the Prophet keeping silent about what he sees someone doing in front of him means that it is an acceptance of that act and an approval of it.
As regards the issue of accepting the repentance of a zindeeq (i.e. a hypocrite who outwardly shows that he is a Muslim while he does not believe inwardly), then we should first know whether his repentance is accepted in this worldly life; as regards the Hereafter, then the matter is between him and Allaah. If he is sincere in his repentance, then Allaah will accept it from him, Allaah willing. Allaah says (what means): {And it is He Who accepts repentance from his servants and pardons misdeeds, and He knows what you do.} [Quran 42:25]
As regards whether or not his repentance is accepted in this worldly life and he protects his blood (from being killed because of his apostasy); then there is a difference of opinion about this issue. The scholars who are of the view that his repentance is accepted provided evidence with the hadeeth in which the, Prophet said, “I have been ordered to fight against the people until they testify that there is none worthy of worship except Allaah and that Muhammad is the Messenger of Allaah and until they establish the prayer and pay the zakah. If they do that, then they will have gained protection from me for their lives and property, unless they commit acts that are punishable in Islam, and their reckoning will be with Allaah.” [Al-Bukhari and Muslim]
Al-Baghawi said in Sharh as-Sunnah, “The hadeeth is evidence that the repentance of a zindeeq is accepted and that what is in his heart is entrusted to Allaah; this is the view of most scholars...”
Besides, Ibn Rajab said in Jaami’ Al-‘Uloom wal-Hikam when explaining this hadeeth:
“The scholars who are of the view that the repentance of a zindeeq, which is when the hypocrite shows that he re-embraces Islam, is accepted provided evidence with this hadeeth; and those do not hold the view that he should be killed just because his hypocrisy has become apparent, as this is how the Prophet dealt with the hypocrites as he applied the rulings that were applied to the Muslims to them in what was apparent from them despite the fact that he knew that some of them were hypocrites inwardly. This is the view of Ash-Shafi’i and Ahmad in one of his narrations, and Al-Khattaabi quoted this from most scholars ...”
Ibn Hajar mentioned the difference of opinion among the jurists about this issue, but he did not explicitly clarify the preponderant opinion. However, it appears from his statement that he leans to the view that the repentance of a zindeeq is accepted, as he said in Fat-h al-Baari:
“The scholars who hold the view that the repentance of a zindeeq is not accepted provided evidence with the saying of Allaah (which means): {Except for those who repent and correct themselves.} [Quran 2:160]; so we cannot know the honesty of the hypocrite because the corruption is due to what he conceals, so if that was exposed and then he shows that he quits it, then this does not make him different from what he was upon before. Allaah also says (what means): {Indeed, those who have believed then disbelieved, then believed, then disbelieved, and then increased in disbelief - never will Allaah forgive them, nor will He guide them to a way.} [Quran 4:137], but the answer to this is that this verse refers to the person who died while he is in such state, as interpreted by Ibn ‘Abbaas, and reported by Ibn Abu Haatim and others. Also, evidence is provided for Imaam Maalik's opinion that the repentance of a hypocrite is not known; he said that the Prophet did not kill the hypocrites in order to soften their hearts towards Islam and that if he had killed them, he would have done so because he knew (through revelation) about their state, but other people might have said that he had killed them for another reason. On the other hand, the evidence given by those who consider that their repentance is accepted is the verse in which Allaah says (what means): {They took their [false] oaths as a cover.} [Quran 58:16]; so this indicates that showing faith protects oneself from being killed.
In any case, the scholars agreed in consensus that the rulings of this worldly life are applied in relation to what is apparent, and Allaah knows what is hidden in the hearts of the people. The Prophet said to Usaamah, 'Did you open his heart?' And to the one who said to him in secret that he wanted to kill one man (due to his hypocrisy), he said, 'Does he not pray?' The man replied, 'Yes.' Thereupon, the Prophet said, 'I am forbidden from killing them.' Soon, we will see some wordings of the hadeeth by Abu Sa'eed in which Khaalid ibn Al-Waleed asked permission to kill the one who objected to the division of money by the Prophet (and said that such a division was not done for the sake of Allaah) and said that many worshippers say with their tongue that which is not in their heart, the Prophet replied to him, 'I have not been ordered to investigate the hearts of the people.' [Muslim]; and there are many ahaadeeth in this regard.”
As underlined above, the incident of ‘Abdullaah ibn Abi as-Sarh included certain implications that led the Prophet to make things difficult for him and it cannot be used as evidence to say that the repentance of the one who mocked the Prophet and the like is not accepted.
Allaah knows best.