It isn't that it won't allow special characters. It will but the data is stored in a single text field and those weird bits indicate what should be there: %20 indicates a space, %3 indicates a question mark, etc. I'm guessing that is a UTF8 thing. All the reporting data IS STORED IN ONE FIELD. I think that is a little crazy. But that is how it is. I know practically nothing about programming and cannot contribute a better idea, so I cannot criticize...maybe it just makes me crazy trying to read it (honestly, I stopped trying reading those a long time ago...and some of the headaches stopped).
If you really want to read those horrible things, you could set up some sort of search/replace thing that automatically replaces %20 with a space and %3 with a ? and so on. I'd have to do it manually but I'm sure there is a way. I ran some Crystal Reports on this type of data several years ago and that was one of the things I told it to do. Worked really well (outside of the having to work in Crystal Reports...but if you like that sort of thing, just fine).
Oh, and Moodle isn't really 2004 compliant. You might want to use 1.2. It works better. Not saying 2004 won't work, but some of the stuff you might expect to work one way might not. And most everything I've seen here implies Moodle isn't interested in jumping through the hoops necessary to be 2004 compliant (Dan, if you are reading this: this is not criticism, I agree, it isn't worth it).