Mutualisms are key drivers of evolutionary and ecological processes. Understanding how different species can evolve to interact in mutually beneficial ways is an important goal of evolutionary theory, especially when the benefits require costly investments by the partners. For such costly investments to evolve, some sort of fitness feedback mechanism must exist that more than recoups the direct costs. Several such feedback mechanisms have been explored both theoretically and empirically, yet we know relatively little how they might act together, as they probably do in nature. In this paper, I model the joint action of three of the main mechanisms that can maintain symbiotic cooperation: partner choice by hosts, population structure amongst symbionts, and undirected rewards from hosts to symbionts. My results show that population structure reduces the benefit from partner choice to hosts. It may help or hinder beneficial symbionts and create positive or negative frequency dependence depending on the nature of host rewards to the symbiont. Strong population structure also makes it less likely that host choosiness and symbiont cooperation will be jointly maintained in a population. The intuition behind my results is that all else being equal, population structure reduces local variation available to the host to choose from. Thus, population structure is not always beneficial for the evolution of cooperation between species. My results also underscore the need to do full analyses of multiple mechanisms of social evolution to uncover their interactions to uncover the interactions between them.