Only allow automation to trigger once a day?

Basically, you want it to execute its actions only if the value of the automation’s last_triggered is before 05:00 today. If the value is after 05:00 that means it has already triggered once today.

The condition to achieve this is simple:

condition:
  - condition: time
    after: '05:00:00'
    before: '09:30:00'
  - "{{ state_attr(this.entity_id, 'last_triggered') | default(today_at(), true) < today_at('05:00') }}"

In fact it can be even simpler but it’s designed to also work with an automation that has never been triggered (the value of last_triggered would be None).

This is the simpler version but I suggest using the more robust version that employs the default filter:

condition:
  - condition: time
    after: '05:00:00'
    before: '09:30:00'
  - "{{ state_attr(this.entity_id, 'last_triggered') < today_at('05:00') }}"