How can I have a gap in the SQL Server Job Agent history for a job?
Check the duration of the job prior to the first slot it "missed." Typically job history won't have gaps unless:


The previous instance of the job is still running - SQL Server knows not to start two copies of the same job concurrently, so it just skips that slot.
The job was disabled during that time.
Someone deleted the history from msdb.dbo.sysjobhistory.