Why doesn't the longest night of the year have the earliest sunset or the latest sunrise?

Just about all of these kinds of questions have their answer in the speed of the Earth in its orbit, and the observer's latitude, during the relevant time of the year. The Sun appears to travel faster in the sky when the Earth is whipping around the Sun near its perihelion period in December. It moves more sluggishly during its aphelion period in June. During a one day period near perihelion, the Sun's 'sky velocity' changes appreciably between sunrise and sunset. The result is reflected in the specific sunrise and sunset times by several minutes. Consider the following examples at various latitudes on the Earth:

Date             Sunrise     Sunset    Daylight hours    
.......................................................
Latitude=0
December 4        5:47       17:54         12:07
         8        5:48       17:56         12:08
        12        5:50       17:58         12:08
        16        5:52       18:00         12:08
        20        5:54       18:02         12:08
        24        5:56       18:04         12:08
        28        5:58       18:05         12:07
January  1        5:59       18:06         12:07
        11        6:04       18:11         12:07
        27        6:09       18:16         12:07
        

Latitude=+40
December 4        7:06       16:35         9:29
         8        7:09       16:35         9:26
        12        7:13       16:35         9:22
        16        7:16       16:36         9:20
        20        7:18       16:38         9:20
        24        7:20       16:40         9:20
        28        7:21       16:42         9:21
January  1        7:21       16:43         9:22
        11        7:22       16:54         9:32
        27        7:14       17:12        10:58
        31        7:10       17:17        10:07

Latitude=+60
December 4        8:41       14:59         6:18
         8        8:48       14:56         6:08
        12        8:54       14:54         6:00
        16        8:58       14:53         5:55
        20        9:02       14:54         5:52
        24        9:03       14:56         5:53
        28        9:03       15:00         5:57
January  1        9:03       15:02         5:59
        11        8:54       15:22         6:28
        27        8:27       15:59         7:32
        31        8:18       16:10         7:52
.....................................................................

From the above we see that:

                       Lat 0            Lat +40           Lat +60
---------------------------------------------------------------------
Shortest Days         ........        December 20       December 20
Earliest sunset       November 2      December 8        December 16
Latest sunrise        February 12     January 3         December 26
---------------------------------------------------------------------

The speed of the Sun on the sky can be found from its change in latitude and longitude:

                                                     Absolute
Day      Distance(AU)    Latitude     Longitude     Difference     Degrees/
                          degrees     deg   min      lat long       Day 
---------------------------------------------------------------------------
Dec 4      0.9859        -0.41         252   7
    8      0.9850        +0.09         256  10       .5   4.05      1.020
   12      0.9845        +0.31         260  14       .22  4.07      1.019
   16      0.9841        +0.04         264  19       .27  4.08      1.022
   20      0.9837        -0.46         268  23       .50  4.07      1.025
   24      0.9835        -0.76         272  27       .30  4.07      1.020
   28      0.9833        -0.64         277  33       .12  5.1       1.275

Jan 4      0.9832        -0.37         282  54       .27  5.35      
    8      0.9832        -0.41         286  59       .04  4.08      1.020
   12      0.9834        -0.05         291   3       .36  4.07      1.021
   16      0.9837        +0.47         295   8       .52  4.08      1.028
   20      0.9839        +0.73         299  12       .26  4.07      1.020
   24      0.9843        +0.49         303  16       .24  4.07      1.019
---------------------------------------------------------------------------

Perihelion occurs around January 6th at a distance of 0.9832 AU. For December, and January I used the 1996 ephemeris, so there is a break between December 28 and January 4. The point is that the speed of the Earth in its orbit, reflected in the Sun's ecliptic latitude and longitude, is not constant during the December Solstice, and although it is about 1 degree per day, it varies by up to 0.3 degrees per day around this mean value. Because 1 degree of angle equals 4 minutes of time this translates into a rate of change of the sunrise and sunset times of up to 4 x 0.3 or about a few minutes of time per day, in addition to the latitude of the observer on the Earth.