I realize this question has been out here a long time, but I recently experienced a similar situation and solved it - my Civi version is 5.3.1 and I'm using it with Drupal version 8.6.3.
In my case, I had accidentally set up the Membership Type to be linked to Organizations, but had defined the Relationship to be "Employee of" rather than "Employer of". This meant that Civi went looking for contacts that the Organization was an "employee of" rather than contacts that the Organization was an "employer of" when it was time to create inherited Memberships.
There appears to be a display bug in Civi in which it detects that an Employer/Employee relationship does exist between the Organization and Individual even if the direction is reversed and it reports it as being "eligible." This seems to account for the reporting of eligible contacts but the failure to create the membership.
When I set up the membership type's relationship direction to use "Employer of," the membership inheritance began working. (In my case, I had to make a direct database update to the civicrm_membership_types table because Civi won't let you modify the membership type after memberships have been created. The update caused no data integrity issues for my situation. YMMV)
Or you can use this plugin to modify the relationship https://github.com/agileware/au.com.agileware.membershiprelationshiptypeeditor