Suppose we have the following equations where $0<p<1$:
\begin{align} a_{i,j}&=pb_{i+1,j} + (1-p)b_{0,j} \\ b_{i,j}&=pa_{i,j+1}+(1-p)a_{i,0} \end{align} with the boundary conditions: \begin{align} b_{3,j}=1 \qquad\text{ where $0\le i< 3$}\\ a_{i,3}=0 \qquad\text{ where $0\le j< 3$} \end{align} We are asked to get $a_{0,0}$
I can solve it by getting a set of equations such as: \begin{align} a_{0,0} & = pb_{1,0} + (1-p) b_{0,0}\\ b_{1,0} & = pa_{1,1} + (1-p) a_{1,0}\\ b_{0,0} & = pa_{0,1} + (1-p) a_{0,0}\\ a_{1,1} & = pb_{2,1} + (1-p) b_{0,1}\\ \vdots \end{align}
however this seems too complicated and very easy to calculate wrong. If we let the number $3$ in the boundary condition to be a much larger number $n$, then this method is impossible to solve by hand.
I want to know if there is a better way or more analytical way to solve this kind of equation?

One way is to place the values $a_{i,j}$ $b_{i,j}$ (for $0\le i,j<3$) in two matrices $A,B$
Then you get the equivalent system of matrix equations:
$$\begin{array}{rcl} A &=& C B + D \tag{1}\\ B &=& A \, C^T \end{array}$$
where $C=\begin{pmatrix} q & p &0\\ q & 0 &p\\ q & 0 & 0 \end{pmatrix}$ and $D=\begin{pmatrix} 0 & 0 &0\\ 0 & 0 &0\\ p & p & p \end{pmatrix}$
(where $q=1-p$)
Or $$A = C A C^T +D \tag{2}$$
Considering that $A$ is the unknown, this corresponds to $9$ linear equations with $9$ unknowns, so it's in principle solvable. Actually this is known as the discrete Lyapunov equation. Sadly, while it's quite simple to solve it numerically (basically you build a $9 \times 9$ matrix to express it -and solve it- as a basic linear equation $Ax = b$), it does not seem easy to express the solution (in particular, $A_{0,0}$) in general, as a function of $p$ .
An example (in Octave/Matlab) :
This agrees with the formula from rajb245's answer : $a_{0,0}(0.3)=0.5051590567552$