Hi SuperHuman
I'm not sure about the commands and libraries you are using for the LCD. I'm not an expert there.
However, the (Demo Limit) error occurs when you are working on the free compiler version and your program exceeds the allowed size for compilation, (Which is 4096 bytes for your case).
To solve this issue, you need to buy one of the 8051 compilers.
There are three 8051 compilers, they are:
1- Mikro-C PRO for 8051:
http://www.mikroe.com/mikroc/8051/
2- Mikro-BASIC for 8051:
http://www.mikroe.com/mikrobasic/8051/
3-Mikro-Pascal for 8051:
http://www.mikroe.com/mikropascal/8051/
To explain it a little more, for each of these compilers, you can download a demo version (for free) from its page that I gave you the link for, but that version will only allow you to program a small part of your program memory.
The size of that small part is mentioned in the page of the compiler, (In the same place where you can download your free version to be exact). That size is 4096 bytes for 8051.
If your program size exceeded that small part, then you'll get a (Demo Limit) error.
And to unlock the rest of the program memory of 8051, you need to buy one of those compilers.
By the way, some 8051 products include a CD with them, among the contents of the CD is also a Demo version of all the compilers, not a full version.
Best Regards.