Does segwit solve malleability of the witness part? I understand that after segwit the transaction ID can't be malleated, 
but can't the witness part be malleated, just like the scriptSig can in a non-segwit transaction?
but can't the witness part be malleated, just like the scriptSig can in a non-segwit transaction?


Yes, absolutely.

But the witness does not contribute to the transaction id (txid), which is what subsequent transactions refer to. Because of this, malleating a witness in a given transaction does not invalidate follow-up transactions using this transaction as an input. This is important for any application where multiple parties rely on an unconfirmed transaction to keep a stable txid.