Only one of the broadcasted transactions will make it to the blockchain. The malleable copies stay in the memory pool of miners for a while until they are deleted to make way for new transactions. Nothing to worry about.
Shouldn't the miners drop the malleable copies immediately upon receiving a solved block that spends the same inputs?
Not just miners, for everybody. Once UXTOs are spent in a blockchain-included transaction, any other transaction spending them are invalid. All non-useable transactions will be flushed upon receipt of the new block.
The blockchain only contains blocks, which are the accepted version of transactions that will likely be permanent.