Device-to-device (D2D) communications allow direct transmissions between two adjacent user devices, which can improve system performance in cellular networks. Considering full-duplex (FD) relaying outperforms half-duplex (HD) relaying in spectrum and energy efficiency, we apply the FD relaying-based D2D communication scheme in heterogeneous cellular network, which allows D2D links to underlay cellular downlink by assigning D2D transmitters as FD relays to assist cellular downlink transmissions. Although the scheme can improve the utilization of spectrum resource dramatically, the unreasonable resource sharing of D2D users will increase the inter-user interference. Therefore, in this paper, we try to optimize the throughput of D2D users on the premise of ensuring the quality of service (QoS) of cellular users. To this end, we first propose a D2D transmit power-allocation scheme and use Gale-Sharpley (GS) algorithm in matching theory to solve the resource allocation problem. Next, a Cheating algorithm based on cooperative game theory is proposed to further improve the throughput of D2D users. More importantly, due to the NP-hardness of finding the optimal solution of Cheating algorithm, we propose a heuristic algorithm based on depth first search (DFS) which using different colors to represent the different statements of D2D users to find a near-optimal solution. The simulation results show that the proposed algorithm compared with GS algorithm can significantly improve the total throughput of D2D users, and it also has lower complexity and better throughput performance against existing Cheating algorithm.