Centering a value of a matrix

A simple way would be to use the nicematrix package.

\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\[
\begin{pNiceArray}{CCCC}
1 & 0 & 0              & 0 \\
0 & 1 & 0              & 0 \\
0 & 0 & \Block{2-2}{R} &   \\
0 & 0 &                & 
\end{pNiceArray}
\]
\end{document}


Raise it into place:

enter image description here

\documentclass{article}

\usepackage{amsmath}

\begin{document}

\[
  \begin{pmatrix}
    1 & 0 & 0 & 0 \\
    0 & 1 & 0 & 0 \\
    0 & 0         \\
    0 & 0 & \multicolumn{2}{c}{\raisebox{.5\normalbaselineskip}[0pt][0pt]{$R$}}
  \end{pmatrix}
\]

\end{document}

A solution that keeps the existing pmatrix setup and combines \multicolumn and \multirow directives:

enter image description here

\documentclass{article} 
\usepackage{amsmath,multirow} 
\begin{document}
\[
\begin{pmatrix}
1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & \multicolumn{2}{c}{\multirow{2}{*}{$R$}} \\
0 & 0    
\end{pmatrix}
\]
\end{document}

In short, all you need to do is replace \multicolumn{2}{l}{\multirow{R}} in row 3 of your code with \multicolumn{2}{c}{\multirow{2}{*}{$R$}} and delete \multicolumn{2}{l}{} in row 4 of the pmatrix.