Yah, I'm pretty sure the only escape char in ofp is 'newline' (\n). I seem to remember trying to do this before, with no success...
You can always just put a space between the % and your numbers. Triggerhappy's second idea is interesting, even though it doesn't do what you want, and he messed up the quotes.
However, I don't know if you can use the + operator like how you are doing it, in the middle of a format command. Try this instead:
hint (format["%1",123] + "%")
Parenthesis may not be needed, but they help clarify the point. Format makes one string, and then you concatanate it with your other string "%" using the + operator.