Salvatore Girone and fellow marine Massimiliano Latorre are accused of shooting the fishermen while protecting an Italian oil tanker as part of an anti-piracy mission off India's southern Kerala coast in 2012.
Latorre was allowed to travel back to Italy in 2014 for treatment after suffering a stroke.
But Girone has been barred from leaving India pending the resolution of a dispute between New Delhi and Rome over which country has jurisdiction in the case.
Girone has been living in Italy's embassy in New Delhi.
The Supreme Court on Thursday agreed to alter Girone's bail conditions allowing him to return, after a tribunal in The Hague ruled this month he should be free to go, pending the final outcome of arbitration.
“Having considered submissions of the parties, subject to conditions, the Italian marine Salvatore Girone's bail conditions are modified,” Justices PC Pant and DY Chandrachud said in a written judgement read out in court.
Italy initiated international arbitration proceedings in the case last year, referring the row to the Permanent Court of Arbitration (PCA) in The Hague and asking it to rule on where the men should be tried.
Under his new bail conditions, Girone must return to Delhi within one month if the PCA rules that he face trial in India.
The Indian government's lawyers have not objected in the Supreme Court to the marine's request to go home.
The detention of the marines, the murder charges and the long wait for the case to be resolved are sore subjects in Italy, with Prime Minister Matteo Renzi regularly flayed by opposition leaders for failing to get both men home.
Italy insists the oil tanker, the MV Enrica Lexie, was in international waters at the time of the incident.
India argues the case is not a maritime dispute but “a double murder at sea”, in which one fisherman was shot in the head and the other in the stomach.
In December 2014, Rome threatened to withdraw its ambassador from India after a court rejected Latorre's original request for medical leave.