I've come across this request before as well (through not specificaly for wordpress.com hosted sites)--I typically tell clients that it's not advisable as it adds a layer of server complexity.
But it is possible--in general--to provide content in a subdir from a separate server. Basically, you install mod_proxy on Apache and set up a "reverse proxy"--all requests come to the proxy, and it decides which server to send the request to based on a set of rules you configure. But it's not a redirect...the response comes through the proxy. I've never done it (it requires way more server admin skills than I posses), but if you're adventurous, knock yourself out.
HOWEVER, with a wordpress.com blog, I don't think you're able to change the domain for your blog to a separate domain with a subdir. So once you hit the blog's homepage, any subsequent clicks would take you to the wordpress.com domain. Which seems not worth the hassle of setting it all up.
Probably the simplest option is to use a subdomain rather than a subdir.