What you're looking for is called process substitution; it's not a standard feature of the shell, but supported in Bash/ksh/zsh. An example:
$ echo <(echo foo)
/dev/fd/63
$ cat <(echo foo)
foo
The <(cmd) expands to the name of a file which the shell arranges to have the output from cmd available to read. On Linux, it's likely /dev/fd/NN, but it might be a named pipe too, depends on the system and the shell.
So, I suppose you could use
tor -f <(cat <<EOF
...
...
EOF
)
Note that above with cat, I could have used cat < <(echo foo) with the redirection instead of cat <(echo foo), it's the same difference as with cat < somefile and cat somefile. cat works with either, since it reads stdin by default, but if the tool expects a filename, you wouldn't add the redirection.
Anyway, the above is a bit hairy, it'd be better to have tor read the here-doc directly, without another process in the middle. You'll just have to make it read stdin.
A few utilities read stdin (or write to stdout) if the filename given is -, but if tor doesn't support that, you can use /dev/stdin (resp. /dev/stdout), so I suppose this might work:
tor -f /dev/stdin <<EOF
...
...
EOF
Unless of course it needs stdin for something else. In that case, you can should be able to use another fd with the here-doc:
tor -f /dev/fd/9 9<<EOF
...
...
EOF
(though you need a system that supports /dev/fd/NN)