The Indians first allowed Sri Lanka to post a mammoth 348 for one, largely built around huge opening 213-run stand between Tharanga and experienced Mahela Jayawardene (107), and then were shot out for 187 in 44.5 overs to suffer their second successive defeat.
Tharanga's score was highest by a batsman on the West Indies soil and it was seventh time that he was involved in a double-century partnership, joint-highest along with Ricky Ponting.
The Indians are yet to open their account and now face the daunting task of winning their remaining two league matches at Port of Spain in Trinidad to remain in contention for a place in the final.
The hosts West Indies are on top of the table with nine points while Sri Lanka have five points. India next play West Indies on Friday and then Sri Lanka on Monday.
India seemed to miss the presence of their 'captain cool' Dhoni, who has been ruled out of the series due to a hamstring injury.
The Indians looked a pale shadow of themselves. Suresh Raina (33), Murali Vijay (30), Shikhar Dhawan (24) and Dinesh Karthik (22), all got starts but did not convert those into big knocks.
Chasing the imposing total, India piled up pressure on themselves by scoring just 28 runs for the loss of one wicket in the first 10 overs.
