Hi Jonathan,
From the output you provided in the first post this doesn't appear to be a STP problem at all. It looks like a physical layer problem.
GigabitEthernet2/4 is down, line protocol is down
The line is down, down and is not receiving in packets.
I would try to isolate this problem before making all the STP changes. I would try the following to isolate the problem.
1. Plug 2/4 into a known working port
2. Switch 2/3 with 2/4 - Does the problem follow the port switch?
3. Try a different GBIC
4. Replace the fiber cable. Use a known good cable
Once the port is up, up it should move to forwarding.
The other STP changes are good. I would recommend 8.0.01e. More fixes included in this version.
If I misunderstood the initial question, let me know.
David