Linking your application (the 'bootloadable') to the bootloader is just there for putting the application into the proper memory location (for that it needs to know the bootloader size). Uploading the application doesn't also upload the bootloader.
So you have two bootloaders, b1 and b2, and two applications, a1 and a2. a1 is linked to b1, and a2 to b2. Assuming b1 is on the PSoC, uploading a2 will leave b1 in place - but a2 will be uploaded to flash memory in a location determined by the size of b2. So if b2 is smaller than b1, a2 might override the bootloader.
So you need to link your applications to the same bootloader which is on the PSoC.
This is explained in more detail (and with images even :-) in the bootloader component data sheet.