It sounds to me like what you really want is for the user to select a one hour time slot instead of a fixed time.
This makes it much clearer that you cannot commit to a specific time and the user must be prepared for an estimated time given a one-hour timeframe.
<select>
<option>09:00 AM - 10:00 AM</option>
<option>10:00 AM - 11:00 AM</option>
<option>12:00 PM - 01:00 PM</option>
<option>02:00 PM - 03:00 PM</option>
<option>04:00 PM - 05:00 PM</option>
</select>
I would suggest you include a message above the select control that states something like:
Unfortunately, we cannot offer an exact time to call, and will call within a one-hour window. Select your preferred time slot from the options below.
If you are looking to reduce "text clutter" on your page, then you probably don't even need this at all. Having the time ranges in the options should be sufficient for the user to understand it is not a fixed time.
A note on implementation. You can still technically only need to store a single time in your database, which would be the middle time. For example, if the user selects 9am-10am, you can just store 9:30am.
My suggested change is more about how the user perceives the options, rather than about what data you actually need to capture.