The Foreign Secretary suggested that Britain would have to accept Assad running for re-election
He also left the door open to a deal with Russia to wipe out so-called Islamic State in Syria, which has been riven by nearly six years of brutal civil war.
"I see downsides and I see risks in us going in, doing a complete flip flop, supporting the Russians, Assad," Mr Johnson told the House of Lords' International Relations Committee.
"But I must also be realistic about the way the landscape has changed and it may be that we will have to think afresh about how to handle this."
It was a "very painful dilemma" but he was once told it was "better sometimes to have a tyrant than not to have a ruler at all".
After he said an election could be part of a solution, he said "yes" when asked if that meant letting Assad stand.
"We were wedded for a long time to the mantra that Assad must go. We haven't at any stage been able to make that happen. That's produced the difficulty that we now face.
Mr Johnson said he could see a scenario where UK peacekeepers usher in a political deal
It may be that we will have to think afresh about how to handle this
"If there is the possibility of an arrangement with the Russians that simultaneously allows Assad to move towards exit and diminishes Iranian influence in the region by getting rid of Assad and allows us to join with the Russians in attacking Daesh and wiping them off the face of the earth, or whatever the president (Donald Trump) has said, then that might be a way forward.
"But there are perils in that approach and it's by no means clear that we would either achieve the end of the Assad regime, nor is it clear that even if we did achieve the end of the Assad regime that Syria would be in a better place.
"That is the horror of the dilemma that we are facing."
Foreign Secretary Boris Johnson in pictures
Thu, July 21, 2016
Foreign Secretary Boris Johnson attends his first EU foreign ministers meeting in Brussels to discuss the issues in Turkey, Syria, and the Middle East.
1 of 18
British Foreign Secretary Boris Johnson addresses the press after a meeting with the French Minister of Foreign Affairs Jean-Marc Ayrault at Quai d'Orsay on July 28, 2016 in Paris, France
The Foreign Sec hinted that Britain could work with Russia to wipe out so-called Islamic State
Britain had "played itself out of the game" when MPs voted in 2013 not to "honour" the west's commitment to take military action against the Assad regime after it used chemical weapons, he added.
Mr Johnson also said that although the British government had "rightly or wrongly" ruled out putting British troops on the ground in Syria's war, he could imagine UK peacekeepers one day helping to police a political deal.
Downing Street played down suggestions that Mr Johnson had broken with government policy, saying the Foreign Secretary had been clear Mr Assad could not preside over a genuine transition to a new government which represented all Syrians and protected their rights.