You can just network the 2 computers, then share the printers on the network. That way either computer will be able to print to either printer.
Crossover cable is basically a network cable that bypasses the need for a hub or switch. You would still need ethernet ports on both computers.
If you have a router, you can easily do this, as a router is a switch as well (usually).
If you're already networked, just open Control Panel->Printers then right-click on the printer and select Sharing... It should lead you through it. Then on the other computer, you Add a Printer that is on the network, then search for that printer you just shared.
Keep in mind that this way, whichever printer you want to print to will have to have its computer powered on (otherwise theres no way for the printer to respond to your request)
Another option is to get print servers, which allow you to attach your printer to your network. This way you can separate the printers from the computers and theres no computer-must-be-on-to-print restriction.