I think you need to leave the RAM section starting where it was. The NVIC code to modify the vector table assumes that it can use the start of memory in most cases. I checked the code for the LPC1768 (cmsis_nvic.c) and it like others had this define:
C #define NVIC_RAM_VECTOR_ADDRESS (0x10000000) // Location of vectors in RAM
So either this behavior needs to change, because it is rather fragile, or you need to leave the linker how it was.