I've checked RFC 1738 and it's not the case. The only standard for "+" is:
> (RFC 1866) specifies that space characters should be encoded as `+` in application/x-www-form-urlencoded content-type key-value pairs (see paragraph 8.2.1, subparagraph 1).
RFC1738 is obsolete. RFC1866, referenced in that SO answer, is also obsolete.
But none of that matters, particularly, because lastfm are consuming the URLs, they know full well what "+" means in a URL submitted to their servers, and also they've been around for decades (well before the whole "use %20 instead") - why on earth would they change up their URL scheme when it's working fine?
> (RFC 1866) specifies that space characters should be encoded as `+` in application/x-www-form-urlencoded content-type key-value pairs (see paragraph 8.2.1, subparagraph 1).
From https://stackoverflow.com/a/40292770