"Internal consistency" doesn't matter. Virtually nobody ever has to convert miles to yards; the use cases for measuring a distance in miles and the use cases for measuring a distance in yards almost never overlap. For the rare cases where they do, the units do have an integer conversion.
For the use cases that do commonly overlap, e.g. inches and feet, you get a useful-for-that-specific-domain conversion factor of 12. Some domains use decimal miles or decimal inches and that's totally fine; sounds to me like they didn't need the metric system after all.
But if you're going to be so insistent on "internal consistency", riddle me this: why do we measure time in hours, days, weeks, months, and years rather than in decaseconds, hectoseconds, kiloseconds, megaseconds, etc.?
> if someone is doing detailed work in millimetres, someone is planning a house's rooms in metres, and someone is organizing a town's land in kilometres, they can all work with each other
These people never work with each other. This is a fantasy.