1. You only own the coins in an output of a transaction, not the whole transaction.
If you have some typical transaction with SIGHASH_ALL, you cannot just move signatures from one transaction to another without asking coin owners to make another signature for your joined transaction.
2. Merging transactions won't spend any outputs.
It will spend the same outputs as original transactions, so if you join transactions from your mempool, then it is seen as some double-spending attempt. If you join RBF transactions, then that could be accepted, but you will still need new signatures from all participants.
I don't see how one would do that with the current Bitcoin transactions.
It is possible now, but unsafe, because it works only for inputs where you can move exactly the same input script to some other transaction and it still will be valid. For example, if some coins are locked with "OP_HASH256 <some_hash> OP_EQUAL", then you can just copy that input to another transaction. For all typical opcodes like OP_CHECKSIG or OP_CHECKMULTISIG it does not work, because typical signature is applied to the whole unsigned transaction. But if SIGHASH_SINGLE is used, then only one input and one output is signed, so you can copy that signature to another joined transaction. However, there are some issues when SIGHASH_SINGLE is used in a transaction where some input does not have matching output, so creating such outputs is possible, but unsafe.