Cheaptickets lets you search a month at a time for domestic and international and gives you several range choices for the length of your trip (e.g. 3-5 days, 7-10 days, etc.). You can also search +/- 1 to 3 days around specific dates. I've had pretty good luck using FareCompare to locate a possible fare, and then using Cheaptickets to check what fares are actually available.