Well, yes, I know what it is, but I stumbled somewhere... I'll get it
right, though, but not in under half an hour as I thought I might :-)

I split the difference.  Seven minutes.   Zero style points.

Rearrange the fields.  If I'd been thinking, I would have tried to arrange them into
something that GPSBabel could natively read.

rjlmbp:/tmp robertlipe$ cat x.awk
/^T/ {
        LAT=substr($2, 2,2)
        LON=substr($4, 2,3)
        A =  LAT $3 "," LON $5 ","
        $1 = ""
        $2 = ""
        $3 = ""
        $4 = ""
        $5 = ""
        $6 = ""
        print  A $9 " " $7 "-" 8 "-" $10"\n";
rjlmbp:/tmp robertlipe$ awk -f x.awk t > t-tweaked && cat t-tweaked
5127.5822,00528.2055,05:58:42 Sep-8-2007

5127.4258,00528.2570,05:59:44 Sep-8-2007

Now it's just a matter of teaching GPSBabel to read those:

host244-231-65-207:/tmp robertlipe$ cat xxx.style
BADCHARS                COMMA

IFIELD  LAT_NMEA, "", "%9.5f"
IFIELD  LON_NMEA, "", "%10.5f"
IFIELD  GMT_TIME, "", "%T %b-%e-%Y"
host244-231-65-207:/tmp robertlipe$ gpsbabel -i xcsv,style=xxx.style -f t-tweaked -o gpx -F -
<?xml version=" 1.0" encoding="UTF-8"?>
creator="GPSBabel - http://www.gpsbabel.org"
xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=" http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">
<bounds minlat=" 51.457096667" minlon="5.470091667" maxlat="51.459703333" maxlon="5.470950000"/>
<wpt lat="51.459703333" lon="5.470091667">
<wpt lat="51.457096667" lon="5.470950000">

Season to taste.   You probably want to put the entry int he style file that tells is that this is a track if this really is a track.