I’ve never really bought into the idea that Richard had anything to do with the Princes’ deaths.
First, the idea that he did it himself... it doesn’t make sense. He was the King of England, not an executioner. The suggestion that he would kill his nephews with his own hands just smacks of an attempt to vilify him - much as with what happened to King John in reference to his nephew, Arthur of Brittany.
Second, I think if Richard had had the inclination to have the boys killed, he would have produced their bodies. Ordering their deaths then hiding the bodies makes no sense. Especially since there is precedent for it - he could have easily had the boys starved to death then produced unharmed bodies, much as Henry IV died with Richard II (although, it is debated whether HIV ordered the starvation or if RII simply starved himself to death).
Thirdly, I doubt Richard was ignorant enough to think his position would be improved by having the boys killed; after all, it’s the rumours that the boys were dead that pushed the Woodville/Yorks and their supporters into allying with Henry Tudor. The boys were more useful to Richard alive if only because they kept his enemies from supporting each other.
To me the only way it would have made sense for Richard to have done it is if he did it against the advise of his supporters, then hid the evidence to give himself plausible deniability - except, if that’s the case, then why haven’t we found anything written by a supporter indicating that Richard was arguing about killing the boys?
That said, it seems most logical that the boys died while in Richard’s care, and likely violently. If they were still alive following Buckingham’s rebellion then it would have been easy for Richard to put them on display to stop the rumours and prevent the Woodville/York/Tudors from allying. After all - why would Elizabeth Woodville support an alliance that would make her daughter Queen consort when her sons were still alive?
I’m not saying that Henry VII didn’t have plenty of reason to have the Princes secretly killed if they were still alive post-Battle of Bosworth. Rather I think it doesn’t seem logical to believe that the boys were alive long enough to make it into Tudor hands.
Personally, I’m inclined to think they died at the hands of the Duke of Buckingham. It’s possible he did so in an attempt to bolster his own claim to the throne (he was descended from Edward III through both his parents) - in his rebellion he supported first a restoration of Edward V, then once the rumours of EV’s death began circulation he backed Henry Tudor, but either move could have been a ruse, after all Richard himself once publicly supported EV before overthrowing him.
More likely, I think it was a “turbulent priest” type scenario, where Buckingham took Richard’s words to mean that he wanted the boys dead and so arranged it, without Richard actually ordering the deaths (like Henry II and Thomas Beckett). The deaths then caused the pair to quarrel and pushed Buckingham into rebelling. Buckingham would have hidden his part in the deaths because it wouldn’t have been in line with what his new allies would have wanted (given as they were the Woodville/Yorks to begin with), and Richard would have covered it up because there was no way he could have emerged from it looking good.