I would try fitting a panel count data model (probably a negative binomial rather than a poisson) with a DD specification (treatment, post-treatment, and their interaction dummies). See if that produces sensible results. Compare to your fixed effects DD and the poisson DD. This is probably OK if zero is not special.
But you also have to think hard about the economics of the corner solution and how that interacts with your treatment. There is whole class of two part aka hurdle aka selection models where you treat the extensive and intensive margins separately (participation vs levels of outcome). The DGP for y=0 and y>0 may be very different. This is the second approach, harder to fit into a DD frame, but more serious.
Cameron and Trivedi's microeconometrics books are a good applied reference.
Answer to Question from Below:
I could not get the linking to work in the comment, so I added it to my answer.
Like OLS, NB is a model for $E[y|x]$, just with a functional form of $\exp{x'\beta}.$ I believe it should be OK. Here's one published (gated) example, which I have not personally read. Wooldridge and Imbens also mention this approach briefly in their NBER metrics summer course notes from 2007. You might also code up a simple simulation to convince yourself that this works.