No, you can't. There's no stack implemented.
When \ExplSyntaxOn is encountered, some characters have their category code are changed, but their previous category code is stored in the definition of \ExplSyntaxOff (that does nothing, by default).
When \ExplSyntaxOff is next encountered, it resets the category codes to the previous states and redefines itself to do nothing.
Here's an example:
\documentclass{article}
\usepackage{expl3}
\ExplSyntaxOn
\tl_show:N \ExplSyntaxOff
\ExplSyntaxOn
\tl_show:N \ExplSyntaxOff
\ExplSyntaxOff
\tl_show:N \ExplSyntaxOff
\ExplSyntaxOff
\stop
And here's the output on the terminal: you see that the expl3 codes are not valid any longer after the first \ExplSyntaxOff and \tl_show:N raises an error.
> \ExplSyntaxOff=\char_set_catcode:nn {9}{10}\char_set_catcode:nn
{32}{10}\char_set_catcode:nn {34}{12}\char_set_catcode:nn
{38}{4}\char_set_catcode:nn {58}{12}\char_set_catcode:nn
{94}{7}\char_set_catcode:nn {95}{8}\char_set_catcode:nn
{124}{12}\char_set_catcode:nn {126}{13}\tex_endlinechar:D =13\scan_stop:
\bool_set_false:N \l__kernel_expl_bool \cs_set_protected:Npn \ExplSyntaxOff
{}.
<recently read> }
l.5 \tl_show:N \ExplSyntaxOff
?
> \ExplSyntaxOff=\char_set_catcode:nn {9}{10}\char_set_catcode:nn
{32}{10}\char_set_catcode:nn {34}{12}\char_set_catcode:nn
{38}{4}\char_set_catcode:nn {58}{12}\char_set_catcode:nn
{94}{7}\char_set_catcode:nn {95}{8}\char_set_catcode:nn
{124}{12}\char_set_catcode:nn {126}{13}\tex_endlinechar:D =13\scan_stop:
\bool_set_false:N \l__kernel_expl_bool \cs_set_protected:Npn \ExplSyntaxOff
{}.
<recently read> }
l.8 \tl_show:N \ExplSyntaxOff
?
! Undefined control sequence.
l.11 \tl
_show:N \ExplSyntaxOff
?
\ExplSyntaxOff, the state is reverted to normal category codes. Just copy and paste the part between them – egreg Nov 11 '16 at 18:40