I think the problem for us English speakers is the Italian prepositions don't slice along the same lines as English. In some phrases where we use "in", Italian uses "in", but for others it uses "a" or "per". I'm not sure there's an easy rule for it.
Though I notice these time words all tend to use "a" instead of "in". Maybe that's a rule? Siamo a aprile -> We are in April Bevo caffè alla mattina -> I drink coffee in the morning
I believe nella is more of being inside something physically. Something like months and seasons we are in them but not technically. Its more of a rule in the grammar to use a or di when referring to months seasons or time (morning, night, etc). And as far as "alla mattina" might be a regional thing in Italy. Its much more safer just to say "Bevo caffe di mattina". Still means the same thing and personally sounds more natural. (My family is from Palermo, Sicily so maybe in northern parts of Italy they say "alla mattina" but I never heard my family say it).
I know this is an old question but I thought It might help answering this now in case anyone else is wondering. To my knowledge...
Bevo caffè alla mattina essentially means "I drink coffee by morning" di mattina doesn't make sense.
I'm a total newbie though but from what I've learnt, that seems to be the reasoning.
I think that is actually the more accurate translation, or at least an alternative one (but I'm not entirely sure). If you remember back in the earlier parts, we could use a noun to describe another noun by putting "al" in it, such as "Voglio del gelato al cioccolato" being "I want some chocolate ice cream." Perhaps that's what's going on here, but because "mattina" is feminine, we use the feminine form which would be "alla." So the sentence "Bevo caffè alla mattina," could very well be "I drink morning coffee."
Again, I'm not sure so it would be appreciated if someone more experienced could verify this.
Re the previous question please can you apply British English when as i am you have a British user with a British phone/mobile location. E.g. I might not know that 'fall' is the third season of the year. We call it Autumn. US English is different from British English. E.g. Pants are underwear not trousers which cover your legs. Thanks