The browse list is a very complicated issue. I've had this problem before, and there are several things you can do to fix it.
For one, you need to understand how it works; each network segment needs a Segment Master Browser (SMB) - (a segment is basically a single LAN, broadcast domain, and IP range). Segment Master Browsers then update the Domain Master Browser (DMB) with their local browse list. The DMB then re-sends that browse list back out to SMBs so that they can in turn supply the "whole" list to computers on their segment.
The problem comes in with the priority of SMBs and DMBs. For instance, when every computer comes on the network, it assumes it is going to be a master browser and sends out an election request. If the current MB is say an NT workstation, and a 2000 workstation comes online, the 2000 workstation has a higher priority (and XP has higher, Server OSs have higher, etc.), so it wins the election, forcing a change in the browsing on the network. I'd be willing to bet you have a lot of browser elections events in your event logs.
There are tools in the Win2k resource kit for testing browser status. One that I use when I have browse list issues is browstat.exe. It tells you who the current browse master is, and some other details. There are also registry hacks that you can perform to force a certain computer (that's always on) to always win browser elections. Try the following links for specific help on this problem:
Another problem here can come from the routers, which typically do not forward broadcasts, but if you have an "ip helper-address" configured (on Cisco), it forwards NetBIOS BROADCAST requests OUTSIDE the segment, resulting in more confusion with the master browsers. You may want to check with your network guys if you're not the person who handles this. Ask them if they have ip helper-addresses, and tell them they need to block netbios dgm and ns with the following commands:
no ip forward-protocol udp netbios-ns
no ip forward-protocol udp netbios-dgm