Although this appears lengthy, it breaks down to two simple questions and a two step answer at the end. If you read it through, you will see that it turns out to be very simple.
Brachos 31b.
Shmuel was two years old when Chana brought him to the Mishkan to begin his life of קדושה וטהרה. He saw the people in charge of the mishkan looking for a kohen to shecht a korban. Shmuel told them there was no need to search for a kohen, because the shechita of a non-kohen is just as good as that of a kohen. Eli the Kohen Gadol asked him what the basis of his psak was, and he told him his proof from the passuk. Eli said he was right, but because he paskened in the presence of his rebbi (in this case, the Gadol Hador being the equivalent of his rebbi,) he is a מורה הלכה בפני רבו and will die for this sin of disrespect. Chana cried to Eli, but remember, this is the miracle child that resulted from your bracha! Eli said it doesn't matter, and he would bless her with even greater children. Chana said, no, I prayed for this child, and I don't want another one, I want this one to live.
There are two important questions.
How can you punish a two year old for any sin; and
If indeed he was liable, what did Chana say that changed Eli HaKohen's mind?
The Maharsha says that Eli's ominous warning of imminent death was an invocation of Divine punishment, not something any earthly court would carry out. The exemption of minors from punishment (irrespective of their intellectual maturity, unlike bnei Noach, see e.g. Rambam 10 Melachim 2) only pertains in earthly courts. In the court of Heaven, even minors can be found guilty and punished.
The Tzlach expands on this and says that in heaven, all that matters is the presence of criminal intent. This is why Eli asked Shmuel the basis of his assertion. Only when he saw that Shmuel answered like an adult did he say that Shmuel was chayav missa bidei Shamayim.
Gemara
״אל הנער הזה התפללתי״. אמר רבי אלעזר: שמואל מורה הלכה לפני רבו היה. שנאמר: ״וישחטו את הפר ויביאו את הנער אל עלי״. משום ד״וישחטו את הפר״ הביאו הנער אל עלי?
אלא, אמר להן עלי: קראו כהן, ליתי ולשחוט. חזנהו שמואל דהוו מהדרי בתר כהן למישחט, אמר להו: למה לכו לאהדורי בתר כהן למישחט? שחיטה בזר כשרה! אייתוהו לקמיה דעלי. אמר ליה: מנא לך הא? אמר ליה: מי כתיב ״ושחט הכהן״?! ״והקריבו הכהנים״ כתיב, מקבלה ואילך מצות כהונה, מכאן לשחיטה שכשרה בזר.
אמר ליה: מימר שפיר קא אמרת, מיהו מורה הלכה בפני רבך את, וכל המורה הלכה בפני רבו חייב מיתה.
אתיא חנה וקא צווחה קמיה: ״אני האשה הנצבת עמכה בזה וגו׳״. אמר לה: שבקי לי דאענשיה, ובעינא רחמי, ויהיב לך רבא מיניה. אמרה ליה: ״אל הנער הזה התפללתי״.
Maharsha
אע"ג דקטן מב' שנים היה שמואל כמ"ש וישב שם עד עולם דהיינו עולם של לוים נ' שנים וכל שנותיו לא היו רק נ"ב שנים (תענית כה) היינו בדיני אדם אבל בדיני שמים היה רוצה לעונשו דכל המורה הלכה בפני רבו חייב מיתה בדיני שמים
Tzlach
ומה ששאל עלי לשמואל מנא לך הא, לא בשביל שעלי לא ידע דרוש זה, רק רצה להבחין חכמתו של שמואל, כי לפי רוב חכמתו ראוי להענישו, אף שקטן אינו בר עונשין, זה שחכים טובא בר עונשין הוא לפי חכמתו.
I have a big problem with this answer. The Maharsha and the Tzlach say that the leniency that protects minors only applies in Beis Din shel Matta, but there is no such leniency in Beis Din shel Maala. But adderaba! Beis Din shel Matta punishes as soon as a child is 13, but the Gemara in Shabbos says that a person is not subject to heavenly infliction of capital punishment until he is twenty years old!
Shabbos 89b by Yitzchak Avinu's defense of Klal Yisroel
דל עשרין דלא ענשת עלייהו
Rashi
דל עשרין דלא ענשת להו - שכן מצינו בדור המדבר שלא ענש הקב"ה אלא מכ' שנה ומעלה דכתיב (במדבר יד) במדבר הזה יפלו פגריכם וגו' מבן כ' שנה ומעלה אשר הלינותם עלי:
This is also stated in the Medrash brought in Rashi in the beginning of Chayei Sarah.
בַּת מֵאָה כְּבַת עֶשְׂרִים לְחֵטְא: מַה בַּת עֶשְׂרִים לֹא חָטְאָה שֶׁהֲרֵי אֵינָהּ בַּת עוֹנָשִׁין, אַף בַּת מֵאָה בְּלֹא חֵטְא.
(Also, coincidentally, here in parshas Korach 16:27, where Rashi says
בֵית דִּין שֶׁל מַטָּה אֵין עוֹנְשִׁין אֶלָּא עַד שֶׁיָּבִיא שְׁתֵּי שְׂעָרוֹת, וּבֵית דִּין שֶׁל מַעְלָה עַד עֶשְׂרִים שָׁנָה)
So I find it difficult to understand why here the Maharsha and the Tzlach assert that in dinei shamayim, Shmuel could be held liable at the age of two.
Among the Mekubalim, it is said that it was Shmuel's spiritual connection with Korach that heightened the standard of liability. (The petur of a kattan is "rachmana hu d'chas elei," (סנהדרין נה ב) and in some cases, there is no "chas," it is strict middas hadin.) As Rav Yaakov Pardo says (middle of first column,) restated in simpler Hebrew,
הכיצד עלה על דעתו של עלי הכהן להעניש במיתה קטן בן שנתיים משום שעבר על איסור של מורה הלכה בפני רבו, הלוא קטן הוא? וביאר, מכיון ששמואל היה נכדו של קרח שחלק על משה רבינו, ולכן ראה עלי שיש בשמואל שורש רע שיקום ויחלוק בעתיד על רבותיו, לכן אמר, עדיף שימות זכאי ואל ימות חייב, ובפרט על פי מה שגילה האר"י הקדוש שעלי הכהן היה גלגולו של אהרן הכהן, ולכן פטירתו היתה בצורה שהוא נפל ונשברה "מפרקתו" כדי לתקן את "וַיִתְפָּרֲקּו כָּל הָּעָּם אֶת נִזְמֵ י הַזָּהָּב אֲשֶר בְאזְנֵיהֶם וַיָּבִיאּו אֶל ַאהֲרֹן"(כי תשא ל"ב, ג'). וממילא עלי שהוא אהרן זוכר היטב את מעשיו של קורח, ושמואל לא היה גלגול של קורח, אדרבה הוא התיקון שלו. וכיון שבהיותו בן שנתיים הוא כבר חולק על עלי הכהן, אמר לאמו, כדאי לשלוח אותו לארץ החיים.
The idea is that Shmuel was descended from Korach, and apparently was spiritually connected with him. When Eli saw that Shmuel was exhibiting behavior that was similar to Korach's, namely the egalitarianism of shechita ksheira b'zar and paskening in his Rebbi's presence, and as such, he would not be "mesakein" Korach's sin, he would just aggravate it, so better that he die young.
Others have a slightly different take on the same theme. Rav Pinchas Freidman brings that Shmuel's behavior was reminiscent of Korach's, and this was a harbinger of a future like that of the original Korach, which endangered all of Klal Yisrael.
מדוע הקפיד עלי הכהן כל כך על שמואל שהורה הלכה בפני רבו, עד שביקש להמיתו בידי שמים למרות שהיה רק בן שנתיים, כי עלי היה מבני בניו של אהרן הכהן הגדול שמדתו חסד, ואילו שמואל היה מבני בניו של קרח הלוי שמדתו דין. לכן כאשר ראה עלי ששמואל אינו נכנע בפניו, בכך שהוא מורה הלכה בפני רבו, שפט מזה כי שמואל מבני בניו של קרח אוחז במעשה אבותיו בידו, שכבר אז ביקש להפוךאת הקערה על פיה להשליט מדת הדין על מדת החסד, ואם כן ראוי לסלקו מן העולם כמו שסילקו את קרח, כדי שלא יחריב העולם שאינו מתקיים במדת הדין כי אם במדת החסד.
Of course, these cheshbonos are irrelevant for a regular Beis Din, but Eli was invoking Din Shamayim, where such considerations can be dispositive.
Once again, I have difficulty understanding this. Unless the rules of Kabbala are very different, it seems that the words of the Torah in Shemos 20:4,
פקד עון אבת על בנים על שלשים ועל רבעים לשנאי
indicate that even where the descendant shows the ancestor's traits, inherited liability, guilt by association, is limited to four generations. So why is Shmuel being punished because of his descent from Korach? עַל שִׁלֵּשִׁים וְעַל רִבֵּעִים לְשֹׂנְאָי doesn't apply to a gilgul?
We can answer this with the Tanchuma brought in Rashi (16:27). Normally, ish b'cheto, and certainly ketanim are pattur. But the deadly sin of machlokes consumes everything in its path, even little children.
ונשיהם ובניהם וטפם. בֹּא וּרְאֵה כַּמָּה קָשָׁה הַמַּחֲלֹקֶת, שֶׁהֲרֵי בֵית דִּין שֶׁל מַטָּה אֵין עוֹנְשִׁין אֶלָּא עַד שֶׁיָּבִיא שְׁתֵּי שְׂעָרוֹת, וּבֵית דִּין שֶׁל מַעְלָה עַד עֶשְׂרִים שָׁנָה, וְכָאן אָבְדוּ אַף יוֹנְקֵי שָׁדַיִם (תנחומא):
With this, we really can skip the mekubalim. Shmuel was not being punished for his own sin at all! He was being punished for the sin of Korach. Ayy, that was hundreds of years before, and this was long after פקד עון אבת על בנים על שלשים ועל רבעים לשנאי? Doesn't matter. There is a special din by machlokes that everyone that is closely connected with the baal machlokes is punished because of him. It's not a psak din, it's teva, like a forest fire. Normally, that only would apply to immediate family. But here, where Shmuel exhibited the behavior of Korach, that itself created an association with his ancestor, and Korach's punishment applied to him.
I believe that this approach is what the Maharsha and the Tzlach had in mind. As I said, without it, the "dinei shamayim" answer is not an answer at all, it just makes the kashe worse. Dinei shamayim are more kal when it comes to "bar onshim," not more chamur, so don't tell me "dinei shamayim."
But now, we have explained Eli's threat so well, we have a problem understanding why it was not carried out. According to the Gemara in Brachos, Eli told Chana that Shmuel would die for being moreh halacha bifnei rabbo, and somehow Chana's words put out the fire.
אמר לה: שבקי לי דאענשיה, ובעינא רחמי, ויהיב לך רבא מיניה. אמרה ליה: ״אל הנער הזה התפללתי״.
What was it that Chana said that changed Eli's mind? What was Chana's winning defense?
The answer is that Chana told Eli that Shmuel's behavior was not a result of his descent from Korach. Yes, he was מורה הלכה בפני רבו, but this was because of her tefilla. Chana said ומורה לא יעלה על ראשו, and that means either fear, as if it would say מורא, or mastery, that he was entirely lacking the natural hesitation to argue with a superior - Hashem granted her tefilla, and this is my "fault," but most importantly, it has nothing to do with Korach. So it's not the pshat that Eli was mochel. The whole basis of being ma'anish no longer applied, so of course he was pattur.
Reb Yonasan Eibshutz (יערות דבש, חלק ראשון, דרוש טז:טז) partially says this, and with my lomdus of the connection to Korach it becomes even better.
אבל חנה התפללה לה' ומורה לא יעלה על ראשו, ודרשינן בסוף מסכת נזיר [דף ס"ו.] מורה היינו מורא בשר ודם, ואם כן כשחנה התפללה, והקב"ה שמע תפלתה וקבע בטבע קיים בשמואל לבל יעלה מורא בראשו, לבל יגור מפני איש, והיה זה אצלו בטבע קיים, כמו שטבע בארי לבל יגור מחיות, כן קבע ה' בלב שמואל לבל יעלה מורא בראשו, וזו היא התנצלות של חנה, דעלי כעס עליו שלא נהג דרך ארץ, והיה לו להיות מורא לפניו, וע"ז השיבה חנה, הלא על הנער הזה התפללתי שלא יהיה מורא על ראשו, וה' שמע תפלתי וקבע בלבו חוק הטבע לבל יגור מאיש ובל יכנע לשום איש, ואם כן מה אשמה יש בילד הזה, אשר החוק הטבע הכריחו לכך מבלי לישא פני זקן, וכל העושה כפי טבעו, אין לו משפט מות ואשמה וא"ש.
(Why did Chana ask for such a thing? Why did she ask that her child be free of מורה? My father in law shlita said that Chana asked for, and was given, a perfect Eved Hashem, and being an eved Hashem requires that you do what you know is right without any concern for those who disagree - the shminis shebishminis and kashe k'barzel that applies to every talmid chacham applies על אחת כמה וכמה for the leader of Klal Yisrael, who the Torah instructs לא תגורו מפני איש. As the Malbim says,
שיתמיד ביראת ה' כל היום עד לא יצוייר בלבו יראה מדבר זולתו, כמ''ש החסיד בושתי מיראת אלהי שאירא זולתו כי הירא מדבר גדול לא יפנה לבבו בעת ההוא ליראה קטנה:)
Review.
How could Eli Hakohen punish the two year old Shmuel for moreh bifnei Rabbo.
What did Chana say that changed Eli Hakohen's mind.
Answer:
The punishment was not a direct judgment of Shmuel. Shmuel's behavior associated him with his ancestor Korach. That association had deadly consequences, in that the punishment of Korach then applied to Shmuel.
Chana explained to Eli that this was a false association. Shmuel's behavior was not a reawakening of his ancestor's traits, it had nothing to do with Korach, it. His behavior was a consequence of her tefillah that her son be a perfect servant of Hashem and have no fear of anything other than the Ribono shel Olam.