I'm assuming $\lambda$ refers to Lebesgue measure defined on the Lebesgue $\sigma$-algebra (and not the associated outer measure). In that case $E$ belongs to the Lebesgue $\sigma$-algebra.
- Suppose first that $\lambda(E)<\infty$.
Given $\epsilon>0$, there exists $G=\cup_i (a_i,b_i)$ where the union is disjoint and countable such that $E\subset G$ and $\lambda(G\setminus E)\leq \epsilon$.
$\lambda(E)=\lambda(E\cap G)=\sum_1^\infty \lambda(E\cap (a_i,b_i))=\sum_1^\infty \lambda(E\cap [a_i,b_i])=\frac 12 \sum_1^\infty (b_i-a_i)=\frac 12 \lambda(G)$
Thus $\lambda(G) = \lambda(E) + \lambda(G\setminus E)\leq \frac 12 \lambda(G) + \epsilon $
By our finiteness assumption, $\lambda(G)\leq 2\epsilon$ and $\lambda(E)\leq 2\epsilon$ for any $\epsilon >0$, that is $\lambda(E)=0$ which is a contradiction with the initial assumption.
- In the general case, let $E_n=(-n,n)\cap E$ and note that $E_n$ increases to $E$.
Also note that $\lambda(E_n \cap [a,b])=\frac{1}{2}(b-a)$ whenever $[a,b]\subset (-n,n)$.
Let $G$ be an open set such that $E_n\subset G$ and $\lambda(G\setminus E_n)\leq \epsilon$. Let $G'=G\cap (-n,n)$ which is open and satisfies $\lambda (G'\setminus E_n)\leq \lambda (G\setminus E_n)\leq \epsilon$. You may write $G'=\cup_i (a_i,b_i)$ with $(a_i,b_i)\subset (-n,n)$.
The same reasoning as above yields $\lambda(G')\leq 2\epsilon$ and $\lambda(E_n)=0$.
But $\lambda(E)=\lim_n \lambda(E_n)=0$.
I must thank Daniel Fischer for fixing the missing argument in my proof.