Many signaling or data forwarding operations involve the broadcasting of packets, which incurs considerable collisions in ad hoc networks based on a contention-based channel access protocol. We propose the Three-hop Horizon Pruning (THP) algorithm to compute two-hop connected dominating set (TCDS) using only local topology information (i.e., two-hop neighborhood). Because every node has the two-hop neighborhood information, it is possible to maintain fresh routes to all nodes within two hops. In this situation, a TCDS is ideal for the propagation of route request (RREQ) messages in the route discovery process of on-demand routing protocols. THP is shown to be more efficient than all prior distributed broadcasting mechanisms, when a TCDS is preferred over a connected dominating sets (CDS). Like all other algorithms that depend on local topology information, THP is not reliable when the topology changes frequently, and there is a clear trade-off between reliability and efficiency. We describe and analyze two enhancements to THP that address the lack of reliability of neighbor information. First we adopt a virtual radio range (VR), shorter than the physical radio range (RR), and consider as one-hop neighbors only those nodes within VR (we do not use two different radio ranges, as in prior work, because it can incur additional interference). The gap between VR and RR works as a buffer zone, in which nodes can move without loss of connectivity. Second, upon receiving a broadcast packet, the forwarder list in the packet header is analyzed together with the current information about the local neighborhood. Based on that, a node may decide to broadcast the packet even though it has not been selected as a forwarder. We conduct extensive simulations and show that AODV-THP with these two enhancements attains better performance than AODV in terms of delivery ratio, control overhead, packet collisions, and end-to-end delay.