The Iran war has become a deeply unpopular stalemate that threatens to derail Donald Trump's presidency.