US President Donald Trump has refused to certify Iran's compliance with a landmark 2015 deal curtailing Tehran's nuclear programme in exchange for sanctions relief.