I have made some changes to the RTE_Device.h that are necessary for my UART transmission to work properly. Unfortunately I cannot set this via the API in Driver_USART.h. Will these changes be overwritten or will I have to write functions to implement these changes to the RTE_Device.h?
Actually I think it is a bug or missing feature that this cannot be set. The FCR register of the LPC1769 cannot be written to. When I change values of the registers in the drop down menu in Periphals --> UART0, it goes back to the initial value. I had to manually write to this register in the RTE_Device.h and now it works. All the other registers can be set here without issues.
There is a function getCapabilites() to read the capabilites of the driver, but there is no possibility to set these capabilites. Maybe I am missing something. I have searched everywhere.
RTE_Device.h doesn't set registers directly -- it defines macros that are used elsewhere to enable code and create values that are loaded into registers.
As you noted, customizing RTE_Device.h can work, but unless you take over the pack (you can make your own), then you could have problems in future if/when the pack is updated.
You can avoid that hassle by defining the appropriate timeout macro in the C/C++ options. You can do that at the project level or for individual files. It's still part of the project, easy to find, and easy to implement.