One problem with people who are not entitled to free NHS care is that the NHS is not properly geared up for charging them and, even when they are charged, some simply don't pay. If someone has expensive treatment and then simply leaves the country without paying, not much can be done about it. They certainly can't keep someone in hospital until they have come up with the money – not when there are already so many complaints about elderly bed blockers. Hospitals cannot be turned into debtors' prisons.
Insisting on showing a passport wouldn't help either. I have a UK passport but I am not entitled to free NHS care as I don't live in the UK, although I do pay UK taxes. There must be plenty of people who live, work and pay taxes in the UK who are not British citizens, so don't hold a British passport but who are entitled to free NHS care. I suppose their passports would contain residency or work permit authorisation of some sort.
Free NHS care does not depend on how many NI contributions have been made and nor should it.