Hi,
I would recommend removing the product_parent_id column from your CSV.
If you have it, then the system expect to have the parent row also in the CSV and also a column for each characteristic with the values of each variant for each characteristic, etc.
So since you only want to update the variants, data, and not create/rearrange them, you should not have that product_parent_id column.
That's probably why it messed your variants.
You say that no products were updated. But how do you know ?
On your CSV, all the entries have a product_parent_id, so that means that you don't have any product in your CSV, only variants.
You say that the variants got messed up, which means that the system updated them (in a wrong way because of the product_parent_id column, but still).