Prime Minister Prayut Chan-o-cha overruled City Hall on Monday and decided Bangkok restaurants should be allowed to provide table service until 9pm, not 7pm, from Tuesday.
He announced the decision after chairing a meeting of the Centre for Covid-19 Situation Administration.
The prime minister said the Thai Restaurant Association had complained to the government about the early closure announced earlier in the day by the Bangkok Metropolitan Administration as part of measures to halt the spread of Covid-19.
The BMA had said diners would be allowed table service from 6am-7pm, but no alcohol, with only takeaway service after 7pm.
BMA spokesman Pongsakorn Kwanmuang said this applied to shops serving all kinds of food, including bars and cafes, effective from Tuesday until the end of the month.
However, proprietors must strictly enforce social distancing measures, including 1.5 metres distance between the tables.
Alcoholic drinks were banned from all food shops, to discourage customers from staying longer, he said.
The spokesman said all weddings and ordination ceremonies should be deferred.
Organisers were required to seek permission from the Health Department first if they insisted on holding the events.
He said details would be finalised later on Monday.
The prime minister subsequently overuled the BMA, extending table service until 9pm.
Bangkok is one of the 28 provinces most affected by the new coronavirus outbreak. City Hall is encouraging people to stay home and avoid social activities that bring together a large number of people.