I can't speak to what is causing the error aside from "malformed request", which viruses and trojans frequently make.
As for why you are getting it on your console, I tracked down the following in the code:
http://cvs.apache.org/viewcvs.cgi/jakarta-tomcat/src/share/org/apache/tomcat/util/http/Attic/Parameters.java in method:
org.apache.tomcat.util.http.Parameters.processParameters()
which is part of your stack trace, we find:
So that's where the stacktrace comes from (probably?); this bad-mannered code. The line numbers don't really match up, but I'm assuming I'm looking at some version of the code that is not in the 5.0.x build. Plus, it's in the Attic, with notations that the code has been moved to the connectors source. But obviously the build of Tomcat (and the connector you're using) still uses this?
You *ought* to be able to match up this exception with an access request, through your Apache web server logs, or if you're not using Apache, then through tomcat's access log (unless you've shut it off).