Whenever I extract an archive using 7-Zip, it performs a two step operation. First it extracts the contents of the archives to a temporary folder, then Windows copies the files from the temporary folder to the target directory.

The second part of this operation can take some time, especially if there were a large number of small files in the archive. It seems like the operation could be sped up if 7-Zip just extracted the files directly to the target directory to start with. Is there a way to make it do this?

You can press F9 inside 7-Zip, you'll get two panes. In the first you navigate to the archive you want to extract, and in the second you navigate to the folder where you want your files extracted. This will skip the temp folder step.