Surrey left-armer Curran earned figures of 5-43 as the tourists slumped from 189-4 to 197 all out in their first innings, with Woakes collecting two wickets to confirm his return after knee and quad injuries is on track.
Then Dawid Malan and Ollie Pope made half-centuries as the Lions made 194-5 in their second innings before declaring late in the day.
That decision paid off as Jamie Porter took two wickets and Curran his sixth of the match to leave the tourists tottering on 11-3 – 410 short of an unlikely victory.
Woakes made the first breakthrough of the day, bowling Rishabh Pant for 58 to trigger the collapse as the Indians lost their last six wickets for eight runs inside five overs – four of them falling to Curran, who exploited cloudy conditions in a superb spell from the New Road end. India hit back when the Lions began their second innings, with Alastair Cook falling cheaply after his first-innings century, and Nick Gubbins also dismissed in a lively spell by Mohammed Siraj.
Malan joined captain Rory Burns at 25-2 and the left-handers calmed things down in adding 57 until Burns edged Siraj to Pant in the last over before tea.
Malan completed his half century before he was stumped off Shahbaz Nadeem’s left-arm spin, and Woakes then joined Pope to add a quick 52 for the fifth-wicket.
Woakes drove a catch to deep cover in the over after Pope had reached a 71-ball half century, and Burns declared to set the Indians a tricky mini-session in the fading light.