1) + is not part of any "URL-encoding".
2) I think this is a HTML and not a HTTP issue
IETF has 3 working groups working on different but related standards:
URI (URL, URN, etc.), HTML, and (presumably, after the BOF and the
approval of the charter), HTTP. We'll have to be careful to separate
out issues, especially ones that seem to cross working group
boundaries.
In particular, how web clients should encode queries in response to
HTML documents in the URL they send to their HTTP server seems to
cross all of the boundaries of all of the subcommittees, but in this
case, the transformation is something that a HTML interpreter makes
independently of whether the base document is HTTP or FTP or MAILTO.