Hi MT8 and thanks for your question.
I am not familiar with the AndEngine but I recognized some issues that are typically for this problem.
Normally you get no limit cap by the number of division. These are just passed parameters to the graphics pipeline where to get the specific tile from in the image(texture).
One thing that can cause the problem is the size of your image. Graphic cards have a hardware specific maximum and minimum value. In order to get more tiles with the same size in pixels you have to increase the size of your texture. The texture you posted is huge in size and most mobile graphic chip can not handle it.
So what to do? First check your limitations. Since you are using an Android Engine I assume you are using OpenGLES. You can get the max dimension by:
glGetIntegerv(GL_MAX_TEXTURE_SIZE, maxDimension, 0);
If this is the problem you have multiple choices. First reduce the size of every tile.
Second use a tile format to squeeze out your white spaces. You can find a nice video here.
Split your tiles in multiple textures. Anyway you are limited to your number of texture channels.
Additionally your image has no squared size to a number of 2^n. This leaks memory and slows down your rendering pipeline. Even if you do not use the space you should resize your image.
I hope I could help you. Have further questions? please tell us. :)