Chasing 388 for victory, Sri Lanka were 270-5 at lunch with Dickwella (56) batting alongside Asela Gunaratne (26) at the R. Premadasa Stadium.
The hosts, who suffered a shock defeat in the preceding one-day series against the minnows, will still have to dig deep to claim the 118 runs needed for the win.
Sri Lanka's highest-ever successful run chase was against South Africa in 2006, when they achieved their 352-run target in Colombo.
Cremer, who had taken two wickets in the final session on day four, struck again with his leg-spin to have Angelo Mathews caught and bowled for 25.
More From This Section
Dickwella and Gunaratne then put on an unbeaten 67-run stand to keep a persistent Zimbabwe bowling attack at bay for the rest of the morning session.
Dickwella got lucky on 37 after wicketkeeper Regis Chakabva clipped the bails on Sikandar Raza's off-spin, sending the stumping decision to the third umpire.