Is there any software that allows me to make a single multi-recipient transaction?
Bitcoin-QT can do this.  When you click the "Send" tab you will see a button "Add Recipient" at the bottom of the screen.

You can also do it using the RPC interface, with the sendmany command.