Why is "forward slash" not spelled "forwardslash"?
Solution 1:
Forward slashes have been around forever (well, at least since Ancient Rome), but they were just called "slash".
Backslashes, on the other hand, are a fairly recent invention. How ASCII Got its Backslash reports that it was added to the ASCII character set in 1961 for the Algol programming language. The term rose in popularity in the early 80's, probably tied to the rise of MS-DOS.
Why is it "backslash" and not "backward slash"? Simply because that's what the guy who invented it(*) called it and it stuck. Had he called it "backward slash", it's debatable whether common use would have eventually shortened it to "backslash".
"Forward slash" is used comparatively less often, and only when someone wants to be really specific about which slash to use. I still hear it called just "slash" a lot.
As for the "rule" that governs whether it's written as one word or two? Compound words in English can be written with or without a hyphen or space; it just comes down to common usage. As this article points out:
Over time, the convention for writing compounds can change, usually in the direction from separate words (e.g. clock work), to hyphenated words (clock-work), to one word with no break (clockwork).
(*) Technically the backslash existed in some form prior to its inclusion in ASCII, but it was not in widespread use and I could find no evidence of its name prior to that point.
Solution 2:
In the unix world it was just called a slash. The backslash was the escape character. When MS-DOS came around and used the wrong slash to delimit subdirectories, programmers referred to that as slash also; the context determined whether it was one or the other. It was not until non-technical people started using URLs that technical writers felt the need to say "forward slash" to keep them from introducing escapes into web addresses.
Solution 3:
There is a well expression often used to illustrate the difference between compound words and modifier-modified combinations. You've probably heard "blackboard", the compound, compared with "black board", which is a combination of an adjective modifier "black" and the noun it modifies, "board". Not only is the spelling different, a dividing space being used after the adjective, but the pronunciation is different as well. The compound has more stress on the first part, "black-", while the modifier phrase has more stress on the second part.
The pair "backslash"/"forward slash" are like the above well known pair in both respects I mentioned: only the first is written without a space, and the pronunciation differs, with most stress on the first part of "backslash" but most stress on the second part of "forward slash". I conclude that the grammatical difference is the same: "backslash" is a single word, while "forward slash" is a phrase -- a syntactic combination of two words.
I'm not saying, nor denying, that the "forward" in this phrase is an adjective, like the two model cases I mentioned. I don't know what it is. But I do think that "forward" is an independent word, unlike the "back" in "backslash".
So I think that the conventional spelling of "backslash" without an internal space, unlike "forward slash", makes perfect sense.