The present study focuses on a family of Boolean games whose agents' interactions are defined by a social network. The task of finding social-welfare-maximizing outcomes for such games is NP-hard. Moreover, such optimal outcomes are not necessarily stable. Therefore, our aim is to devise a procedure that finds stable outcomes with an as high as possible social welfare. To this end, we construct a quadratic-time procedure, by which any initial outcome of a game in this family can be transformed into a stable solution by the use of side payments. The resulting stable outcome is ensured to be at least as efficient as the initial outcome. Considering the fact that this procedure applies for any initial state, one may use good search heuristics to find an outcome of high social welfare, and then apply the procedure to it. This naturally leads to a scalable process that finds desirable efficient and stable solutions.