The suspected bomber was stopped while wearing an explosive vest as he attempted to enter the cafe and before he was able to detonate it, the source said, adding that he was injured during his arrest and taken to hospital.
Militants have carried out a number of bombings in Lebanon in recent years including some motivated by the war in neighboring Syria, but no major incidents has taken place for months.
In June, eight suicide bombers targeted a Christian village in north Lebanon near the Syrian border, killing five other people. Twin blasts in November 2015 left 43 dead in the mostly Shi’ite Muslim southern districts of Beirut.
Islamic State, a militant Sunni group that holds extensive territory in Syria, said it was behind those attacks. Some smaller attacks also took place last year that it did not claim.
Attacks in Lebanon risk widening sectarian fissures that lay behind the country’s 15-year-long civil war which ended in 1990 and that have been aggravated by the war in Syria.