What if the existing unit was kept undesignated, and with potentially nonstandard notation such as 1201 (Building 12 unit 01), 1LR (Unit 1 Left Rear), Rear (Rear), and so-on (ideally based on what on-the-ground signage like mailbox labels puts them as), and a new subkey addr:unit:full was added where the full designators could be spelled out. This allows the multi-value syntax to still remain for multiple addresses, and continues easy short labels for maps, at the cost of data duplication and less-structured data. It’s also fully incremental from existing practice.
Keep addr:unit the unprefixed, short form, in the manner signed on-the-ground for more complex entries (a la 12-01 or C20). In a new key addr:unit:full spell out the full specifier. So:
addr:unit:full=Apartment 3addr:unit=3addr:unit:full=Unit 2 Rear→addr:unit=2Roraddr:unit=2 Reardepending on what signage indicates it asaddr:unit:full=Building A Unit 52→addr:unit=A52(or otherwise as signed)
The designators inside *:full might want to be standard abbreviations, but I put them spelled out on the principle that it’s easier to abbreviate than expand.