Jayawardene played dream knock of 103 runs in the final to put Lankans on driving seat. Jayawardene added 66 runs for the sixth wicket partnership along with Kulasekera (32).
After Kulasekera, Perera smashed 22 runs off 9 deliveries.
For India, Zaheer Khan and Yuvraj Singh took two wickets while Harbhajan claimed one wicket.
Yuvraj Singh provided India much needed breakthrough by dismissing Samaraweera for 21 runs.
Mahela Jayawardene scored a brilliant half century
Yuvraj Singh once again provided vital breakthrough to India as he dismissed Sri lanka skipper Kumara Sangakkara for 48 runs off 67 deliveries.
Zaheer Khan and Harbhajan Singh served early jolts to Sri Lanka by dismissing two Sri Lankan players within 16 overs.
Harbhajan Singh clean bowled TM Dishan for 33 runs and earlier Zaheer Khan dismissed Tharanga for two runs.
Zaheer Khan bowled three maiden in a row to put Sri Lankan openers under pressure.
Earlier, Sri Lankan skipper Kumara Sangakkara won the toss and elected to bat against India in the World Cup final here at Wankhede stadium in Mumbai.
There was lots of drama in the middle during the toss. Match referee Jeff Crow went for re-toss after some confusion between the both captains.
Sri Lanka has made four changes for the final. Chamara Kapugedera, Nuan Kulasekera, Suraj Randiv and T Perera are back in the final XI.
On the other hand India has made just one change. S Sreesanth has replaced injured Ashish Nehra.
Ind: Virender Sehwag, Sachin Tendulkar, Gautam Gambhir, Virat Kohli, Yuvraj Singh, MS Dhoni, Suresh Raina, Harbhajan Singh, Zaheer Khan, Munaf Patel, S Sreesanth
SL: Upul Tharanga, Tilakaratne Dilshan, K Sangakkara, Mahela Jayawardene, T Samaraweera, Chamara Kapugedera, T Perera, Nuan Kulasekara, Laith Malinga, Suraj Randiv, Muttaiah Muralitharan