If I were you, I would try to burn the small copper bridge with a current surge. Using some cheap probes or solid wire, touch between the two points you don't want connected with a power source current limited to about 5A. If it doesn't work, increase current limit -- I wouldn't go past 50A, though. Note that the points you touch will oxidize immediately, and possibly also release magical smoke, so it'd be best if they were the edges of relatively large pads. Of course, everything between the two wires will be destroyed by 5A-50A, so don't miss any current paths...
Now, I don't mind blowing stuff up -- kinda' enjoy it, really -- but this method carries quite a bit of product risk. Don't get too mad at me when you burn your fingers, break your PSU, and melt some FR-4 on your desk. (You can get a little bit mad, though -- I understand.)
I'd like to place these additional CPLDs on a different PCB. This has the advantage that I can simply extend the device when I need. On smaller harnesses, a single 114 test-point PCB will suffice. On larger ones, I can cascade.
There are multiple levels of modularization which you can aim for. Where you want to stop depends on your specific use case. At the most basic level, the hardware must be designed such that you can select the number of modules in use after the design stage. The difficulty of changing the number of modules, space available, desired software complexity (and available space for software, especially on a CPLD) and the system cost will be key factors in your decision.
Hardware
The simplest and cheapest way to do this is to build one PCB, (You don't need multiple PCBs for modular design!) and put footprints for your desired maximum number of CPLDs on the PCB. If you need more IO, you can then solder down another CPLD. Obviously, this isn't something you'd want to do very often.
At the next stage, you'd want to build daughtercards so that you can more easily add and remove modules. You asked:
But what would be the best way to actually connect the PCBs together?
This depends on your system architecture and number of modules. If you know you'll never want more than, say, 3 modules at any one time, just put three connectors on the main board. These can be edge connectors, or stackable connectors, or whatever you like that doesn't require wires. If the number of sub-modules is too large to fit connectors for each on one PCB, then you should consider stacking (if your bus can handle the fanout of your maximum number of modules) or daisy-chaining (if you need to buffer the signal or vertical space is limited) the modules.
Plenty of connectors are designed for this purpose; check the "Board-to-Board" section of your favorite distributor or manufacturer, and many are designed for extremely low crosstalk and high frequency - 500kHz is nothing, unless you're using PTH 0.1" breakaway headers and have fast-changing signals (even then, you're probably OK). Check the mating strength of your connectors just to be sure, but if you only have a few pins, the footprint of your interconnection doesn't carry the stresses well, or the system will be subject to vibration, you'll need standoffs. It's often wise to design the interface in such a way that different modules can be designed to interface with the motherboard in the future. Pins are cheap, give yourself a couple spares just in case!
Software
If your number of modules supports it, you can simply add a slave select line for each module. This isn't really a software solution, but I wanted to mention it.
If you don't mind programming every CPLD differently, you could build the system such that the microcontroller sees it as one giant shift register (which you've suggested). If you added or removed a module, that module's address space would simply be wasted, and extra time would be used transmitting to addresses which don't exist. Each module would need to 'know' its address space, though, which would make programming the complete system a struggle.
A more versatile solution is to use software addressing to access each sub-module. In a 'programming mode' (perhaps a pushbutton on the module, or simply only connecting one at a time), you could assign the CPLD an address. By assigning each CPLD a different address, you could add or remove modules at will, and only have to adjust the activity of the microcontroller (which I presume to be easier to adjust than the CPLD).
My suggestion for this project
If a 324-pin device will solve all your foreseeable use cases, then the single-PCB method should work fine. The multiple-slave-select method would allow you to program all the CPLDs simultaneously with a single programmer. Sorry, but this project as described doesn't seem like a candidate for daughtercards.
Best Answer
This is one of those things where what you think you want and what is possible to do are about 10,000 meters apart.
It is possible to make a jig that has spring loaded pogo pins. Pins with sharp points can be made to line up with small test points on one side of the PC board. Generally the board is guided in place on the jig via tooling posts that line up in holes in the circuit board. For longer term use a clamping mechanism is needed to hold the board down in place on the spring loaded pins.
The pogo pin fixture is going to take up a good amount of height so give up the idea of it being portable and fittable inside the existing housing. It is also nearly impossible to build a successful pogo pin fixture unless you have the original design data for the circuit board. Gerber files would be a minimum. You also need a precision drill fixture that can drill perfectly straight holes down into the material that holds the pogo pins in place. That material needs to be a good thickness to hold the pins in a sturdy manner. Expect a pogo pin fixture to take up about 2 -> 3 cm of height depending upon which pogo pins you choose.
For trying to fit the connections inside the existing case you are going to have no choice but to solder the wires. Give up trying to think otherwise. Wire the 15-20 wires over to a small connector that you might choose to poke through a hole that you Dremel out in the existing housing.
Keep in mind that once you start down the road of hacking into a pre-existing product that it becomes dedicated to that effort. Erase thoughts of trying to keep your hack platform pristine. If you need the product for normal use then go purchase another one for that purpose.
Just for reference here are a couple of pictures of a small pogo pin fixture that was made to allow programming of an AVR microcontroller via test points to its SPI programming port directly on its product circuit board. In this case the programming operation took only a few seconds so the product circuit board was simply held in place on the tooling posts. Note in the side view that the polycarbonate that holds the pogo pins is ~9.3mm thick.