Parliament's legislative committee agreed the treaty after heated debate, with opponents even interrupting one session with chanting.
The agreement passed with 35 lawmakers for and eight against, member of parliament Mostafa Bakry told AFP.
Parliament's defence committee will also examine the accord before it goes to a general vote.
Courts had struck down the agreement, signed in April 2016, but a year later another court upheld it.
Signup to our newsletter and follow us on Facebook and Twitter!
The accord had sparked rare protests in Egypt, with President Abdel Fattah al-Sisi accused of having bartered the islands of Tiran and Sanafir for Saudi largesse.
The government has said the islands were Saudi to begin with, but were leased to Egypt in the 1950s.
Opponents of the agreement insist that Tiran and Sanafir are Egyptian.
In the evening dozens of journalists protested against the agreement in central Cairo, before being dispersed by police, journalists' union official Gamal Abdel Rehim told AFP.
Several were briefly arrested before being released but "three reporters are still detained, and contacts are being made with the interior ministry to get them released," he said.