I use kayak all the time. If you make an account, you can set up alerts to tell you if the price goes up or down, and if the site projects the price to go up or down in the next 7 days.
Houston has two airports. From Milwaukee, United flies direct to Bush (IAH) and Southwest flies direct to Hobby (HOU). Use Google Flights to find the cheapest days to fly for all but Southwest, for which you’ll need to use their own website or app. Should be plenty of other options for either airport with one stop from MKE.
Normally that far out, booking directly with the airlines will give you the lowest price.
You can search via Kayak or Expedia to see which airlines have the best flight options, but then booking directly normally will give you the best price.
I’m not sure there is a “best” site for that. In my experience most travel sites will give you more or less the same price*. What I usually do is use Kayak to figure out what airlines offer flights to my destination, and then book it directly on the airline’s website. Besides what Omar already said about the price, booking directly with the airline just simplifies things should need to change your flights. When you book through a third party like Expedia then you have to go through them to make any changes to your ticket.
*Except sometimes some of those sites will come up with an itinerary that is cheap, but has three connections and a 10 hour layover. I think by default Kayak won’t show you routings they deem “low quality”.
Well, I do not know about cheapest, but Hipmunk is the most amusing ticketing site. Take a look at their second page. Type in some dates and smash, search. The second page is best.