#C, 120 151 140 111 108 105 Bytes
Working for "It's Jimmy's test" --> Bl'B Bleet'B Blet
j;f(char*m){for(j=0;*m;m++)putchar(!isalpha(*m)?j=0,*m:"*Blet"[j=!isalpha(*(m+1))?j>1?4:j+1:j^3?j+1:j]);}
main(c,v)char**v;{
f("The End is near Fellows!");puts("");
f("We praise the Goat God!");puts("");
f("It's Jimmy's test");puts("");
f("0te_st1");puts("");
f("I have a pen");puts("");
f("_012345678_");
}
I think it's correct at least now
Blt Blt Bl Blet Bleeeet!
Bl Bleeet Blt Blet Blt!
Bl'B Bleet'B Blet
0Bl_Bl1
B Blet B Blt
_012345678_