Which contact record should house the membership?
Drupal users can (should) only be associated with an individual contact record but with a correctly set up 'on behalf of' workflow this can allow for an Individual to purchase a membership on behalf of an organisation. (I say 'should' because I know users have overridden this and hence permitted the Drupal user to have a uf_match link to the Org record)

Provided they get a Permissions 'current employer of' relationship, they should then be able to return to a renewal page and have the option of renewing on behalf of the original organisation (or any other organisations they have permissioned current employer relationship with), or join on behalf of a new one.

Inheriting of memberships does not need to be set on the Employer of relationship if you don't want that, eg you could use a Primary Contact for relationship so that only specified individuals 'inherit'. This can help when it comes to sending out reminders.

In terms of Households, we have mostly shied away from using that concept altogether since it does not work with 'on behalf of'. I suspect it is not much work to make this possible, and have flagged it in the past, but no one has funded it, and we have always preferred our work arounds of either having sub-Organisation types, or using Webforms to manage the relationships.

The whole 'on behalf of' can be tricky to get right but there won't be one magic solution that meets all needs.