If what you're trying to do is drive a speaker or similar load with a 5KHz square wave, you might be better off using bipolar transistors instead of mosfets. Use a cmos 555 (which drives the output right to the supply rails, unlike the bipolar version), and replace your N-channel source follower with an NPN small signal transistor driving a PNP power transistor (see Sziklai pair - Wikipedia but also add a resistor between the base and emitter of the PNP transistor). Then add an opposite pair (PNP small signal transistor driving NPN power transistor) to pull the output down to ground. This isn't quite as efficient as using a mosfet half h-bridge (because you will have maybe 1.5v drop across whichever power transistor is turned on), but it avoids the problems of shoot-through that you tend to get with home-made h-bridges.
If the power required in the load is very large, then the mosfet h-bridge is the most efficient solution; but in this case I recommend you buy a mosfet h-bridge driver chip. You won't need any p-channel mosfets because these driver chips are always designed so that both the upper and lower switches in each half h-bridge are n-channel.