Do these 2 KSA shortcuts weaken RC4?
The obvious problem with Shortcut 1 is that the same keystream will be used to encrypt all the messages.  That is, an attacker can exclusive-or two ciphertexts together, and the result will be the exclusive-or of the two plaintexts; this may very well allow the attacker to recover both messages.  How easy this is depends on the language the messages are in; if we assume they are in ASCII-English, this is fairly straight-forwarding as long as the messages aren't extremely brief.

There are two obvious problems with Shortcut 2:


How cryptographically secure is the operating system "random" function?  Quite often, such operating system functions are only statistically random, this might not be good enough.
You say that Alice "securely" sends Bob the array; is she sending a separate array for each message?  If so, why doesn't she use that secure method to send the message?  If not (that is, she reused the same array for different messages), she runs into exactly the same problem as Shortcut 1.


Also, in shortcut 2, your pseudocode says "Assign a random S[] element to S[i]", while your comment says to swap them.  Which do you mean?  What you really want to do is swap the elements (it's important that S[] remain a permutation).