How to fix "Unable to save a field collection item without a valid reference to a host entity" error?
Sorry for the late reply but your question is a bit confusing and I would like to clarify the mentioned issue (message). Did you use ->setHostEntity($obj) at creation of the FieldCollection? I think that you created "ghost" fieldCollections. Have a look in DB if they was added there and you don't see the new FieldCollection at HostEntity in back end.

In my case, i was loading a FieldCollection Item which also did not have the HostEntity set and was struggling with the same Error Message (therefor the explanation). Later I figured out that the following procedure is correct - mention the saving of the HostEntity of the FieldCollection:

use Drupal\field_collection\Entity\FieldCollectionItem;

$fieldCollectionObj = FieldCollectionItem::load($fcId);
if($fieldCollectionObj-&gt;hasField('field_my_user_fc_field')) {
    $userObj = \Drupal\user\Entity\User::load(\Drupal::currentUser()-&gt;id());
    $fieldCollectionObj-&gt;set('field_my_user_fc_field', 'my new value');
    $userObj-&gt;save();
}