Dcc It's not about your server config. Foodomaa is not meant to be used when a single store has more than 400-500 items.
The interface for items is only optimized for restaurant business (that has no more than 250-300 items generally)
To solve this, we would need lazy loading of items objects and also some kind of virtualization (to remove the Dom elements that are outside the viewport) - not in the roadmap for now.
More details:
Your server sends the data for 1.8k items, which is Ok(it might take a bit long because of large data set, but that is totally fine as you also have supercache)
A single item has about 100 Dom elements(more or less about this much) that needs to be rendered on the screen.
These Dom elements are processed by the browser/phone of the customer. (Doesn't depend on your server or anything from now on)
So for 1.8k items, there will be 180k Dom elements that a regular phone with 2-4gb of ram might get hard to render.
If you can distribute the items on different stores - like 400items/store, the the Dom count becomes 40k - that a regular smart phone can process easily.