The home side, who started the match without a recognised striker as veterans Zlatan Ibrahimovic and Olivier Giroud were again missing through injury, struggled to break down their promoted opponents in the opening period.
- Don't have ESPN? Get instant access
Milan upped the ante after halftime, with Hernandez squaring for Diaz to break Venezia's resistance in the 68th minute.
Substitute Hernandez then made sure of a fourth win from five league games this season for Milan eight minutes from full-time with a fine finish.
The victory moved Stefano Pioli's team onto 13 points, level with city rivals Inter Milan at the top of the table, while Venezia stay 18th.
After making an impressive start to the new season, Hernandez is looking to go one better than last term's second-placed finish.
"We have to win these games, all of them," Hernandez told Sky Sport Italia. "On Saturday against Spezia we need three more points. We are playing for something more, to win the Scudetto."
Milan coach Pioli reserved special praise for Diaz, who now has three goals this season in all competitions.
"He's a guy who has always believed a lot in his own qualities, but he needed a bit of acclimatisation in a different league than he was used to," Pioli said. "He is a pure attacking midfielder, of real quality. He must continue like this.
"I am very happy because he has a great desire to work with us and he deserves the credit he is getting."