The approach for (a) should work, but you have forgotten to subtract cases where there are two different repeated letters. There are three patterns for this: AABB, ABAB, ABBA. For each there are $5\times 4$ choices for the letters, so this is an extra $60$ to subtract.
The problems with the first attempt for (b) aren't quite as the other answer suggests. You do actually count AABB type possibilities, since case 1 counts cases where the first two are equal and different to the third, and the fourth can be anything (equal to the first or third or neither). Then case 2 counts cases where the middle two are equal, and the first and fourth are not the same as the middle two (but can be the same as each other). Case 3 seems to be the same as case 1 in reverse, in which case you have actually now counted AABB twice.
What's missing are the cases where there are more than two consecutive equal letters: $(5\times1\times 1\times 4)+(5\times 4\times1\times 1)+(5\times1\times1\times1)=45$.
Together with the fact that you have overcounted AABB-type ($5\times 1\times 4\times 1=20$) this should give the same answer as your other approach.
A precise answer will likely require computational assistance, with knowledge of the specific dictionaries used in Wordle for valid guesses and valid final answers. This answer will aim to answer the question for a very permissive dictionary, where any combination of 26 letters A-Z may be used as a guess or secret word.
First, an upper bound. A full game with $n$ guesses results in $5n$ emoji shown. There are $3^{5n}$ combinations of three characters in a string of length $5n$, so $\sum_{n=1}^6 3^{5n}$, or 206,741,921,896,692, is a very rough upper bound.
We could be more careful. A game ends with GGGGG, or after six incorrect guesses. Likewise, any of the five permutations of GGGGY is impossible, since the single yellow cannot be both in the word but in the incorrect position (an extra letter that appears elsewhere is marked as Black, not Yellow). So a more careful upper bound would be $\sum_{n=0}^6(3^{5}-6)^n$, or 177,961,648,104,787, where $n$ counts the number of incorrect guesses in a game (any correct guess GGGGG is fixed), and $3^{5}-6$ counts the number of possible ways to make each incorrect guess.
Finally, we can show this upper bound may be realized (with our permissive dictionary). Given a secret word $l_0l_1l_2l_3l_4$ we should show that any emoji output besides a permutation of GGGGY is possible; we may assume the $l_n$ are distinct. Permutations of Gs/Bs are easy: use correct letters for G and distinct $x\not=l_n$ for each B otherwise.
Given emoji output with multiple Y (and any number of G,B), we may use correct letters for each G, distinct incorrect letters for each B, and rotate the correct letters among the Y. For example, GBYBY could be realized using $l_1xl_5yl_3$, where $x,y,l_n$ are all distinct.
Finally we only have the case where we have at least one B and exactly one Y. In this case, fix one B and the Y. Let $l_i$ be the correct letter for the B position; we may guess a word with $l_i$ in the Y position, and a letter $x$ distinct from every $l_n$ in the B position. We then complete the word using correct letters for each G and new incorrect (and distinct) letters for every other B position.
Thus for a permissive enough dictionary, there are 177,961,648,104,787 possible Wordle tweets. (We leave open the cases where players must use information gained from previous guesses to make future guesses.)
Best Answer
It is a graph theory problem. All necessary information of the array can be translated into a graph $G$ were letters are nodes and words are paths. We are interested in the number of 5-paths in $G$.
This number can be calculated by using the adjacency matrix $A$ of $G$: The number of paths of length $n$ starting with vertex $i$ and ending with $j$ is $(A^n)_{i,j}$. So the number $N_n(A)$ of $n$-paths in $G$ is given by the sum of all matrix elements of $A^n$, or in terms of linear algebra:
$$N_n(A)=e A^ne^t$$ where $e=(1,...,1)$. In your example, $$S_5(A) = 13970.$$