<snark>
Our crystal balls have gone out of adjustment due to the impossibility of getting them serviced during beer-bug lockdown, so no, no-one has any idea what's wrong with your code *WITHOUT* *SEEING* *IT* !!!
</snark>
If you were programming in midrange PIC assembler, you might expect problems crossing 2 Kword page boundaries, but as PIC assembler doesn't have an IF instruction, and your PIC only has two pages, each 50% of the total program memory, that's unlikely at 30% used.
High level languages like C are supposed to handle crossing page boundaries cleanly, so unless you are using a buggy legacy compiler from the dark ages or have misreported the percentage use, that's also rather unlikely.