I was able to get some help on this from the Aware team, thought I would add it here to share., #2 was my fix.
we usually avoid putting these symbols as part of the number format (for the reasons that you described) and use various workarounds, for example:
1) If the value is displayed on the form, make "%" part of the field label:
Value,%: 90
2) Alternatively, if the value is displayed on the form make "%" part of the attribute's "presentation description" which is displayed to the right of the field (this option exists in the Presentation dialog for an attribute). As a result the field is displayed like this:
Value: 90 %
In this setup the user doesn't need to enter "%".
3) If the value is displayed in queries, make "%" part of the column label: Value,%.
It is better like this anyway, as the screen becomes less cluttered.
4) If the value is displayed in documents/presentations, make "%" part of the tag expression format (it is safe to do it in documents), for example:
<<MyObject.Value,#.00%>>