Just like with the DACCA issue - Ultimately it’s up to congress.
The president is just the implementer of the laws passed by congress.
If congress didn’t want the embassy moved to Jerusalem they have had ample time to change the law they passed in 1995.
Other presidents have promised to move the embassy to Jerusalem in order to get elected, then reneged on the promise once in office.
President Trump is the first president in my lifetime to make an honest effort to keep his campaign promises.
Trump should have gone the extra step and actually moved the Embassy.
It could have been done instantly. Just change the name of our Consulate General in Jerusalem to “Embassy”.
(and that of our office in Tel Aviv to “Consulate General”)