Let's build a "fat Cantor set". Start with $A_0 = [0,1]$ with measure $\alpha_0=1$. Then remove a short open interval centered at $1/2$, leaving a set $A_1 \subset A_0$ of measure $\alpha_1 < \alpha_0$. So $A_1$ is made up of $2$ closed intervals of length $\alpha_1/2$. Let $B_1$ be the removed interval with length $1-\alpha_1 = \alpha_0-\alpha_1$.
Next remove a short open interval from the center of each of the intervals of $A_1$, to leave $A_2 \subset A_1$ of measure $\alpha_2<\alpha_1$. And $A_2$ is made up of $4$ closed intervals of length $\alpha_2/4$. Let $B_2$ be made up of the $2$ removed intervals, each of length $(\alpha_1-\alpha_2)/2$.
Continue in this way. $A_n \subset A_{n-1}$ has measure $\alpha_n < \alpha_{n-1}$, and $A_n$ is made up of $2^n$ closed intervals each of length $\alpha_n/2^n$. $B_n$ consists of the $2^{n-1}$ newly removed open intervals, each of length $(\alpha_n-\alpha_{n-1})/2^{n-1}$
Let $A = \bigcap_{n=1}^\infty A_n$. Choose the lengths of the intervals removed so that $\alpha>0$, where $\alpha = \lim_{n \to \infty} \alpha_n$. (This is what makes it a "fat" Cantor set.) Of course $m(A) = \lim_{n \to \infty} m(A_n) = \alpha > 0$, where $m$ is Lebesgue measure.
Our limit function is $$ f = \frac{1}{\alpha} \mathbf1_A $$ where $\mathbf1_A$ denotes the indicator function of set $A$. For $n\ge 1$ define $$ f_n = \frac{1}{(\alpha_n-\alpha_{n-1})}\mathbf1_{B_n} $$ (I used Bill Johnson's idea of making an $l^1$ basis. But now these really are disjoint, so you don't have to do estimates to show they are "close enough" to being disjoint.) Now we claim:
(1) $\int f_n g$ converges to $\int f g$ for all continuous $g$;
(2) there is $h \in L^\infty[0,1]$ such that $\int f_n h$ does not converge to $\int fh$.
(1)
Let $g$ be a continuous function. Let $\pi_n$ be the partition of $[0,1]$ made up of the $2^{n+1}$ endpoints of the set $A_n$. Note that for each interval $I$ of partition $\pi_n$ we have $$ \int_I f_{n+1} = \int_I f \tag{*} $$ and more generally $$ \int_I f_k = \int_I f \tag{**} $$ for all $k > n$. (In technical language, we have a "martingale".) As $n \to \infty$, the lengths of these intervals goes to $0$. And $g$ is uniformly continuous. So we will conclude that $\int f_n g \to \int f g$.
(2)
Let $h = \mathbf1_A$. Then $f_nh=0$ so $\int f_nh = 0$ for all $n$. But $fh=f$ a.e. and $\int fh = \int f = 1$.
added: more on $({}^\ast)$ and $({}^{\ast\ast})$
For $\pi_0$. Note $\int_{[0,1]} f = 1 = \int_{[0,1]} f_k$ for all $k$.
For $\pi_1$. If $I$ is one of the two intervals that make up $A_1$, then $\int_I f = 1/2 = \int_I f_k$ for all $k \ge 2$. If $I = B_1$, the removed middle interval, then $\int_I f = 0 = \int_I f_k$ for all $k \ge 2$.
For $\pi_2$. If $I$ is one of the $4$ intervals that make up $A_2$, then $\int_I f = 1/4 = \int_I f_k$ for all $k \ge 3$. If $I$ is one of the intervals that make up $B_2$ or the interval $B_1$, then $\int_I f = 0 = \int_I f_k$ for all $k \ge 3$.
For general $\pi_n$. If $I$ is one of the $2^n$ intervals that make up $A_n$, then $\int_I f = 1/2^n = \int_I f_k$ for all $k \ge n+1$. If $I$ is one of the intervals that make up any of $B_1,\dots,B_n$, then $\int_I f = 0 = \int_I f_k$.