Speculation here, but given the frontend team reverse engineered OP's API and attempted to work around its limitations, and then engineer countered by taking the time to craft a whole library, with very few words passed between, I suspect this is a long-standing problem.
However, I don't wholly blame OP. It smells to me like inexperienced or absent leadership.
It’s utterly unthinkable that you turn around and tell the business “I can’t show you page 2 of the results. Just because”
I’ve seen this before and it truly is the worst for everyone else involved.