You can't prevent downloading the jar - if the user can't do it, he won't be able to play the game. There are some programs which obfuscate the class files so that they would be harder to decompile, but there is no 100% sure way to prevent it.
And besides, why should you protect the code? If somebody really wants to decompile it, you can only make it a little bit more complicated, but not prevent it. And if it's just a normal little game applet, nobody would be interested in it anyway.
Yes, I'm aware of these code obfuscators. But there's also image- and wav-files... And you are right about the fact, that it's just a game and code doesn't have to be 100% secure from that point of view.
Is there a way to hide the codebase? Some scripting or something like that...? (I don't know anything about that) The goal is to make it a little bit harder for a user to download source files.