Schools and councils are being urged to make it harder for children to swap their school meal.
Rising levels of obesity are being fuelled by the ready availability of junk food, said the School Food Trust.
It wants schools to close their gates at lunchtime and councils to stop new fast food outlets opening nearby.
But the Local Government Association said it could not force schools to shut their gates and that food retailers could challenge licence refusals.
The trust has issued a "league table" of the local education authority areas with the most takeaway and sweet shops per secondary school.
Seaside towns - with dozens of outlets aimed at tourists - and inner city areas, fare the worst.
Topping the list is Brighton and Hove, with 46 per school, closely followed by Blackpool and Hull.
Some councils and schools are taking steps to try to restrict the ability of children to buy fast food during school hours.
Leicester City Council is drawing up plans to ban mobile burger vans from areas around schools, and some schools already operate policies which stop children from leaving at lunchtime.
However, the Local Government Association said this could be hard to enforce, and any refusal to grant a licence could be challenged.