This is a problem with the spatial index, not the data itself. You can check this by opening the file in spatialite-gui (available from https://www.gaia-gis.it/fossil/spatialite_gui/home) and right click on the geometry layer then select Check Spatial Index. It should say it is malformed / corrupted. You can then remove the index by right clicking again.
The layer then works correctly in QGIS.
As an aside, to avoid this problem happening in the future it would be very useful if you could detail exactly how the spatialite file was built (if you know). Or give a sample of the shapefile used to build. I can then pass this on to the Spatialite developers who may be able to fix that. Alternatively, it could be something that happened to the file in the period since the shapefile data was converted.
First check are the geometries valid. In some basic cases invalid geometries are rendered but in some not - very often so happens with geometries imported from CAD formats (no matter how it is done using ArcGIS or ogr2ogr both solutions have some weak interpreted cases).
If there is allowed data repairing you can import in GRASS GIS and then export to shapes and back to sqlite - so you can escape from manual repair. In a lot of cases helps immediately :)