Usually thin films have more metalic atoms than oxygen atoms. For ZnO thin films, they are always n-type because they have more Zn atoms than O atoms. When you anneal (30 minutes in O2 atmosphere, at 90 C), you increase the O content, thus the band gap becomes larger (from metalic character you have insulator character).
Localized states on defects tend to trap electrons without releasing them, thus the mobility decreases. Localized states can happen inside the allowed conduction and valence bands, thus the band gap becomes larger when you have localized states.
This happens when the bond length is shortened either by changes in atomic stoichiometry or by decrease in the lattice constant due to some external effect like annealing