Several protocols have been proposed to improve data accessibility and reduce query delay in MANETs. Some of these proposals have adopted the cooperative caching scheme, allowing multiple mobile hosts within a neighborhood to cache and share data items in their local caches. Cross-layer optimization has not been fully exploited to further improve the performance of cooperative caching in these proposals. In this paper we propose a cluster-based cooperative caching scheme. A cross-layer design approach is employed to further improve the performance of cooperative caching and prefetching schemes. The cross-layer information is maintained in a separate data structure and is shared among network protocol layers. The experimental results in the NS-2 simulation environment demonstrate that the proposed approach improves caching performance in terms of data accessibility, query delay and query distance compared to the caching scheme that does not adopt the cooperative caching strategy.