Hi Haolin,
I am unable to reproduce the problem on "13.0.1 for Mac OS X ARM (64-bit) (January 28, 2022)".

So perhaps it is a bug in v12. As a workaround, the Spacings
option does work even though it is not documented and is highlighted as an error in the front end. Try this
Plot[{t, t^2, Sin[t]}, {t, 0, Pi},
PlotRange -> All,
PlotPoints -> 10,
Frame -> True,
FrameStyle -> Thick,
Axes -> {True, False},
PlotLegends ->
Placed[
LineLegend[{"t", "\!\(\*SuperscriptBox[\(t\), \(2\)]\)", "Sin[t]"},
LegendFunction -> "Frame",
LegendLayout -> "Column",
Spacings -> 0.1], {{0.3, 0.9}, {1, 1}}],
GridLines -> {Pi*#/4 & /@ Range[0, 4], Automatic},
BaseStyle -> {FontSize -> 15, FontFamily -> "Times New Roman", Thick},
PlotStyle -> {{Thickness[0.005], Dotted, Cyan}, {Thickness[0.005], Dashed},
{Thickness[0.005]}},
ImageSize -> 500]