Theresa May denies breaking election tax promise over National Insurance as 100 Tory MPs prepare to join Budget rebellion