Here's a couple of suggestions you might want to consider:
1. use data compression algorithms such as Zip and the like to squeeze your data down to a fraction of it's original size. I am not sure if zip is available in the b4a libraries up here but I'm sure someone here could help you out with that. Just perform a search on the keywords "compress". "compression", " zip", " unzip", etc. I have seen several unzip apps for Android so the code is out there somewhere, You could store your zipped data in a SQL database as BLOB data and uncompress indexed pieces of data as needed.
2. Host your data externally in the cloud in raw or compressed form to offload your app. You could easily maintain and distribute new content from your own web server. I would seriously consider storing it in compressed form to dramatically speed up download times.
Using either method above essentially turns your E-Book into a lean and mean data browser. Most modern software applications involving large amounts of data (e.g. pocket bibles and encyclopedia's) are using compression techniques and cloud-based data these days. You could present rich content with ease without worry about the lack of memory resources in the end-user hardware. There are lots of examples up here on how to access data from the web.
OK, hope this helps you more than confuses you. You app would probably have to be "dumbed down" from what it is today with additional code written to access the data using either of the methods above. In fact I have plans on writing a few apps in which I will host content in the cloud and will be in the same boat as you soon. The apps would pretty much all be the same but the unique content would define each app's functionality. All of my time would be in maintaining content and not in app coding itself.
Good luck and Merry Christmas to you and yours.
Regards,
Ray