In addition to what you've described, I presume you also want field 2 to show Range 2's label if the date in field 1 falls within the second date range? If so, then try this:
Set up field_2 as an unstored Calculation field with this basic calculation:
Case ( field_1 ≥ range_1_start_date and field_1 ≤ range_1_end_date ; "Range_1_label" ;
field_1 ≥ range_2_start_date and field_1 ≤ range_2_end_date ; "Range_2_label" )
What will happen is this:
If the date in field_1 falls within Range 1, then field_2 will return the text "Range_1_label".
If the date in field_1 falls within Range 2, then field_2 will return the text "Range_2_label".
This calculation need not be unstored.