Why aren't circadian rhythms exactly 24 hours long?
Biological/organic systems are notorious for imprecision, making a perfect 24-hour cycle practically impossible - nevermind the fact that "hours" are a purely artificial concept that humans invented to help make sense of time. 

The simplest "close-enough" way to measure days that doesn't require an implanted clock microchip or heavy computing power is to detect extreme changes in light or temperature associated with transition between day and night.

An extra argument against hard-locking to a 24-hour cycle: Adaptability and migration. If every life form is locked to a strict 24-hour cycle with fixed time slots for sunset and sunrise, this limits migratory adaptation since different regions have different sunset/sunrise and day lengths at different times of the year. Timing a wake-up and sunrise and sleep at sunset (or the reverse among nocturnal species) generally works across most of the planet no matter the season (the only exception being the niche case of a solstice at the poles, for example http://www.slate.com/blogs/bad_astronomy/2016/06/22/why_does_the_sun_never_set_at_the_north_pole_in_the_summer.html )

There's also some evidence that days on Earth are getting longer ( see 
https://www.space.com/40802-earth-days-longer-moon-movement.html )