Saving and retrieving EntityAutocomplete value
I was able to resolve the issue by loading the entity first like so

$menu = \Drupal::entityTypeManager()-&gt;getStorage('menu')-&gt;load($this-&gt;configuration['menu']);
    $form['menu'] = [
    '#type'          =&gt; 'entity_autocomplete',
    '#target_type'   =&gt; 'menu',
    '#default_value' =&gt; $menu,
];


The value of $this->configuration['menu'] was only the machine name, not the actual entity. So the entity had to be loaded and stored in a variable first.