Well, the power button issue could be that the button isn't being pressed long enough. If the button works when you turn on the pc then it'll work 99% of the time when you turn it off. Try it. Instead of just pressing the button, hold it in until the power goes off. Or hold it in for about 7 seconds and then let go, either way it should turn off.
To completely fix the problem, the BIOS needs to be upgraded. This wasn't a problem with 98 and that makes total sense. This is a problem with many BIOS revisions for 2000 and XP. The problem is the BIOS version isn't a ACPI compatable version. Or the BIOS could be an ACPI BIOS, but not a high enough version for Microsoft. The ACPI (Advanced Configuration/Control Power Interface) version for that BIOS (Award, Pheonix, etc.) should be listed on Microsoft's website under their HCL.
Unfortunatly, once the BIOS is flashed with the ACPI version that is on Microsoft's Hardware Compatability List, the entire OS needs to be reinstalled overtop of the newly flashed ACPI BIOS version.