Here's a (sketch of a) proof that this cohomology group is always zero using the fact that $G=GL_2(\mathbb{F}_p)$ has a cyclic Sylow $p$-subgroup (and so it definitely doesn't generalize easily to $GL_n$ for larger $n$ or $\mathbb{F}_{p^k}$ for $k>1$).

First, if $V$ is the natural $2$-dimensional module for $G$, then $M_2(\mathbb{F}_p)\cong V\otimes V^*$ as a $G$-module, so
$$H^1(G,M_2(\mathbb{F}_p)\cong \operatorname{Ext}^1_{\mathbb{F}_pG}(\mathbb{F}_p,V\otimes V^*)\cong\operatorname{Ext}^1_{\mathbb{F}_pG}(V,V).$$

Let $H$ be the subgroup of $G$ consisting of upper triangular matrices. Since the index of $H$  in $G$ is coprime to $p$, restriction to $H$ is injective on positive-degree cohomology, so it's enough to show $\operatorname{Ext}^1_{\mathbb{F}_pH}(V,V)=0$.

It's easy to check that $V$ is indecomposable, with two non-isomorphic composition factors, as an $\mathbb{F}_pH$-module. Also, $H$ has a normal cyclic Sylow $p$-subgroup, and the representation theory of such groups is very well understood: the group algebras are products of "Brauer star algebras", and it's an easy direct calculation for such algebras to check that $\operatorname{Ext}^1(V,V)=0$ for any indecomposable module $V$ with two non-isomorphic composition factors.

I'm sure there must be a simpler proof for this particular case that avoids the theory of Brauer tree algebras, though.