Sospetto che SqlParameter
"sa" di quale comando fa parte e che tali informazioni non vengono cancellate quando il comando viene eliminato, ma è cancellato quando chiami command.Parameters.Clear()
.
Personalmente penso che eviterei di riutilizzare gli oggetti in primo luogo, ma tocca a te :)