Why do upper triangular matrices form a subspace in the vector space of all matrices? Is the fact that the upper triangular matrices form a subspace in the vector space $M_n(\mathbb{R})$ of all $n×n$ matrices over $\mathbb{R}$ because of the fact that every matrix can be written in the reduced row echelon form and this form is in an upper triangular shape?
 A: No, that's not related. The matrices in reduced row echelon form is not a subspace.
Recall the definition for a space and a subspace is a subset that is a linear space. Since most of the definition is fulfilled automatically the only thing that's not automatically fulfilled is the closedness under addition and scaling of vectors.
Now if you take two upper triangular matrices and add them you still get an upper triangular matrix. And the same is if you take an upper triangular matrix and multiply by a scalar you still get an upper triangular matrix.
This is not true for reduced row echelon form. This is because the first non-zero element in each row has to be $1$, but if you take such matrix and multiply by $2$ the first non-zero element is $2$ instead and not a reduced row echelon form. Consequently the matrices in row echelon form do not form a linear subspace.
A: The row echelon form is unrelated to this subspace.
It's easier to see why this is true if you forget that it's an $n \times n$ matrix and just think of it as vector with $n^2$ entries. When you zero out a bunch of the entries in a vector we can think of it as a projection onto the remaining coordinates and these projection mappings are linear. So, if we zero out all the entries below the main diagonal this is merely a linear projection onto certain coordinates and the image will be a subspace of the original.
Large edit starts here:
Let's look at the $2 \times 2$ case quickly. Say we are looking at $\mathbb{R}^4$ as a column vector $(u,v,x,y)^T$. Say we define a transformation $T:\mathbb{R}^4 \rightarrow \mathbb{R}^4$ explicitly as $T(u,v,x,y)=(u,v,0,y)^T$. This transformation is linear as you can check. So what does this do? Well if we had a vector in $\mathbb{R}^2$ and zero out one of the coordinates it's as projection onto either the $x$ or $y$ axes. In $\mathbb{R}^3$ it's not a projection onto an axes, but rather onto a plane which is common in technical drawings through orthographic projection. There is no way to visualize the transformation in $\mathbb{R}^4$
 easily but the principle is the same, it's a projection onto a subspace of dimension one lower than the higher space and its nullspace is the coordinate axis that was changed to zero.
Now if instead we take $M_{2 \times 2}$ to be the space of $2 \times 2$ real valued matrices and define a transformation $T:M_{2 \times 2} \rightarrow M_{2 \times 2}$ by $\begin{pmatrix}u & v\\x & y\end{pmatrix} \rightarrow \begin{pmatrix}u & v\\0 & y\end{pmatrix}$. Since scalar multiplication and  addition work the same for both column vectors and matrices this transformation is also linear. Since matrix multiplication doesn't come into the picture it doesn't matter how we organize the data because all the operations are done individually on the components in a straightforward fashion.
This scales up to larger matrices and zeroing out more coordinate values as you might do in the $3 \times 3$ case where you must zero out three values of a nine dimensional space. It even works with rectangular matrices and I would encourage you to think of matrices as vectors which are written in a block rather than a line and which allows us to use matrix multiplication to concretely calculate linear transformations from one space to another. It's the operation of matrix multiplication that gives matrices some additional structure which distinguishes them vectors which we use to concretely calculate linear transformations.
A: First of all you had to mention order of matrices!! Set of all matrices over $\mathbb{R}$ is not even a vector space over $\mathbb{R}$.
I assume that, you mean vector space $M_n(\mathbb{R})$ of all $n×n$ matrices over $\mathbb{R}$. Yes set  $U$ of all upper traingular $n×n$ matrices form subspace of $M_n(\mathbb{R})$. This is not because of the reason you had mention, but because of, 
If $A, B∈U$ then $A+B∈U $ 
If $ A∈U$ then $kA∈U$ where $k ∈\mathbb{R}$
That is because of $U$ satisfies the  conditions of subspace. 
The reason you had mention is wrong! for that , take $E$ which is set of all $n×n$ matrices which is in echelon form (or you may take reduced row echelon form) then $E$ is not subspace of $M_n(\mathbb{R})$ because take $A∈E$ then $kA ∉ E$ where $k ≠ 1 ∈ \mathbb{R}$
