Jayawardene hit a lucky 89 and Dilshan scored 55 after England captain Stuart Broad won the toss and opted to bowl in the Super-10 game at Zahur Ahmed Chowdhury stadium.
Jayawardene hit 11 boundaries and three sixes during his 51-ball knock and Dilshan smashed two sixes and four fours in his 47-ball innings as the two added 145 for the second wicket.
Jayawardene was lucky not to get out off the first ball he faced when television replays showed Michael Lumb took a brilliant catch off Jade Dernbach but the on-field umpires -- Rod Tucker at the non-striker's end and Aleem Dar of Pakistan -- referred the catch to television umpire Steve Davis.
Davis, also from Australia, ruled replays were inconclusive.
That did not end England's miseries as their fielders dropped as many as four catches, twice off Jayawardene on five and 82, and one off Dilshan on 21 and in the final over of Thisara Perera who made 23 not out.
England dismissed opener Kusal Perera for three in the second over.
Jayawardene smashed James Tredwell for his eighth boundary to complete his ninth half-century off just 32 balls.
He was finally bowled by Chris Jordan. Both Jordan and Dernbach picked up two wickets apiece.
Both sides remained unchanged from the line-ups of their last games. Sri Lanka had beaten the Netherlands while England went down against New Zealand.
Top two teams from each group will qualify for the semi-finals. The final will be played in Dhaka on April 6.