Here's what I do
Label each cable
I have a brother P-Touch labeler that I use. Each cable gets a label on both ends. This is because if I unplug something from a switch, I want to know where to plug it back into, and vice versa on the server end.
There are two methods that you can use to label your cables with a generic labeler. You can run the label along the cable, so that it can be read easily, or you can wrap it around the cable so that it meets itself and looks like a tag. The former is easier to read, the latter is either harder to read or uses twice as much label since you type the word twice to make sure it's read. Long labels on mine get the "along the cable" treatment, and shorter ones get the tag.
You can also buy a specific cable labeler which provides plastic sleeves. I've never used it, so I can't offer any advice.
Color code your cables
I run each machine with bonded network cards. This means that I'm using both NICs in each server, and they go to different switches. I have a red switch and a blue switch. All of the eth0's go to red switch using red cables (and the cables are run to the right, and all eth1's go to the blue switch using blue cables (and the cables are run to the left). My network uplink cables are an off color, like yellow, so that they stand out.
In addition, my racks have redundant power. I've got a vertical PDU on each side. The power cables plugged into the right side all have a ring of electrical tape matching the color of the side, again, red for right, blue for left. This makes sure that I don't overload the circuit accidentally if things go to hell in a hurry.
Buy your cables
This may ruffle some feathers. Some people say you should cut cables exactly to length so that there is no excess. I say "I'm not perfect, and some of my crimp jobs may not last as long as molded ends", and I don't want to find out at 3 in the morning some day in the future. So I buy in bulk. When I'm first planning a rack build, I determine where, in relation to the switches, my equipment will be. Then I buy cables in groups based on that distance.
When the time comes for cable management, I work with bundles of cable, grouping them by physical proximity (which also groups them by length, since I planned this out beforehand). I use velcro zip ties to bind the cables together, and also to make larger groups out of smaller bundles. Don't use plastic zip ties on anything that you could see yourself replacing. Even if they re-open, the plastic will eventually wear down and not latch any more.
Keep power cables as far from ethernet cables as possible
Power cables, especially clumps of power cables, cause ElectroMagnetic Interference (EMI aka radio frequency interference (or RFI)) on any surrounding cables, including CAT-* cables (unless they're shielded, but if you're using STP cables in your rack, you're probably doing it wrong). Run your power cables away from the CAT5/6. And if you must bring them close, try to do it at right angles.
Edit
I forgot! I also did a HOWTO on this a long time ago: http://www.standalone-sysadmin.com/blog/2008/07/howto-server-cable-management/
Connect your replacement switches back-to-back with a fiber patch cable and verify for sure that their fiber ports work. If they do, then double check the patch cords you're using at each end in the same manner. If you really want to slog through it yourself and have the right patch cables you can use the switches as cheap testers to test at each of the splices (assuming you have connectors on the splices).
If the switches do work, get a better fiber contractor in there. It sounds like your contractor was dodgy. I agree w/ the other posters re: their meter. My experience with contractors testing fibers for me is that their meter knows far, far more than I do about a given fiber.
Best Answer
This will work, but what's the advantage to you over cleaning up existing cables and keeping the switches in the local racks (do you have lots of cross connects between the racks that could be eliminated?).
Remember that patch panels don't magically make your wiring neater: Discipline, maintenance, and lots of velcro ties do that.
Generally, separating your racks can be a good thing, particularly since patch panels usually come with nice solid trunks from panel to panel (less junk under the floor or in your cable trays).
The big downside is that if you lose link on a switch your now have a lot more to troubleshoot (is it the cable from the server to the local patch panel, the panel-to-panel trunk, the cable from the patch panel to the switch, the switch itself, the server itself, etc.).
The smaller downside is having to open two racks to connect a server to a switch. This can be argued as an increase in security however (someone with keys to the switch rack needs to be around to connect new equipment.
Small bit of advice no matter what you decide to do: Document the hell out of your cabling - ESPECIALLY if using patch panels. You will thank yourself later when you need to figure out what path a server takes to get to a switch port. (There are a few questions here on cable labeling schemes - https://serverfault.com/questions/64259/what-is-the-most-effective-solution-you-used-to-label-cables is one of them)