Canada has pledged $71 million more for Palestinians and moved to ban goods from Israeli settlements, breaking with the Trump administration as Marco Rubio refuses to join.