Nodes in an ad hoc grid are characterized by heterogeneity, autonomy, and volatility. These characteristics result in varying workload of the resource manager in the ad hoc grid. Therefore it is required to develop a resource allocation mechanism that can balance the workload of the resource manager, hereafter referred to as matchmaker, and can enable the ad hoc grid to self-organize itself. In this paper, we define a mechanism that dynamically promotes and demotes nodes as matchmaker(s) and matchmakers back to the normal nodes in an ad hoc grid environment. The proposed mechanism uses the matchmaker workload as the basic criterion for promotion and demotion of the matchmaker(s). Simulation results show that our approach performs better than previously proposed solutions.