If you used XeLaTeX, the mathspec or unicode-math packages would provide the means to get fully upright math.
In regular LaTeX, all I can do is tell you some things I've tried. I'm sure people who know what they're doing will explain everything I'm doing wrong. First, you could try something like (for upright Computer Modern):
\SetSymbolFont{letters}{normal}{T1}{cmr}{m}{n}
But that's almost certain to lead to some bad unintended consequences.
Something like this would probably be a little safer, though I still think it may not work the way you'd hope:
\DeclareSymbolFont{mymathvariables}{T1}{cmr}{m}{n}
\DeclareSymbolFontAlphabet{\mathnormal}{mymathvariables}
\DeclareMathSymbol{a}{\mathalpha}{mymathvariables}{`a}
\DeclareMathSymbol{b}{\mathalpha}{mymathvariables}{`b}
\DeclareMathSymbol{c}{\mathalpha}{mymathvariables}{`c}
\DeclareMathSymbol{d}{\mathalpha}{mymathvariables}{`d}
\DeclareMathSymbol{e}{\mathalpha}{mymathvariables}{`e}
\DeclareMathSymbol{f}{\mathalpha}{mymathvariables}{`f}
\DeclareMathSymbol{g}{\mathalpha}{mymathvariables}{`g}
\DeclareMathSymbol{h}{\mathalpha}{mymathvariables}{`h}
\DeclareMathSymbol{i}{\mathalpha}{mymathvariables}{`i}
\DeclareMathSymbol{j}{\mathalpha}{mymathvariables}{`j}
\DeclareMathSymbol{k}{\mathalpha}{mymathvariables}{`k}
\DeclareMathSymbol{l}{\mathalpha}{mymathvariables}{`l}
\DeclareMathSymbol{m}{\mathalpha}{mymathvariables}{`m}
\DeclareMathSymbol{n}{\mathalpha}{mymathvariables}{`n}
\DeclareMathSymbol{o}{\mathalpha}{mymathvariables}{`o}
\DeclareMathSymbol{p}{\mathalpha}{mymathvariables}{`p}
\DeclareMathSymbol{q}{\mathalpha}{mymathvariables}{`q}
\DeclareMathSymbol{r}{\mathalpha}{mymathvariables}{`r}
\DeclareMathSymbol{s}{\mathalpha}{mymathvariables}{`s}
\DeclareMathSymbol{t}{\mathalpha}{mymathvariables}{`t}
\DeclareMathSymbol{u}{\mathalpha}{mymathvariables}{`u}
\DeclareMathSymbol{v}{\mathalpha}{mymathvariables}{`v}
\DeclareMathSymbol{w}{\mathalpha}{mymathvariables}{`w}
\DeclareMathSymbol{x}{\mathalpha}{mymathvariables}{`x}
\DeclareMathSymbol{y}{\mathalpha}{mymathvariables}{`y}
\DeclareMathSymbol{z}{\mathalpha}{mymathvariables}{`z}
\DeclareMathSymbol{A}{\mathalpha}{mymathvariables}{`A}
\DeclareMathSymbol{B}{\mathalpha}{mymathvariables}{`B}
\DeclareMathSymbol{C}{\mathalpha}{mymathvariables}{`C}
\DeclareMathSymbol{D}{\mathalpha}{mymathvariables}{`D}
\DeclareMathSymbol{E}{\mathalpha}{mymathvariables}{`E}
\DeclareMathSymbol{F}{\mathalpha}{mymathvariables}{`F}
\DeclareMathSymbol{G}{\mathalpha}{mymathvariables}{`G}
\DeclareMathSymbol{H}{\mathalpha}{mymathvariables}{`H}
\DeclareMathSymbol{I}{\mathalpha}{mymathvariables}{`I}
\DeclareMathSymbol{J}{\mathalpha}{mymathvariables}{`J}
\DeclareMathSymbol{K}{\mathalpha}{mymathvariables}{`K}
\DeclareMathSymbol{L}{\mathalpha}{mymathvariables}{`L}
\DeclareMathSymbol{M}{\mathalpha}{mymathvariables}{`M}
\DeclareMathSymbol{N}{\mathalpha}{mymathvariables}{`N}
\DeclareMathSymbol{O}{\mathalpha}{mymathvariables}{`O}
\DeclareMathSymbol{P}{\mathalpha}{mymathvariables}{`P}
\DeclareMathSymbol{Q}{\mathalpha}{mymathvariables}{`Q}
\DeclareMathSymbol{R}{\mathalpha}{mymathvariables}{`R}
\DeclareMathSymbol{S}{\mathalpha}{mymathvariables}{`S}
\DeclareMathSymbol{T}{\mathalpha}{mymathvariables}{`T}
\DeclareMathSymbol{U}{\mathalpha}{mymathvariables}{`U}
\DeclareMathSymbol{V}{\mathalpha}{mymathvariables}{`V}
\DeclareMathSymbol{W}{\mathalpha}{mymathvariables}{`W}
\DeclareMathSymbol{X}{\mathalpha}{mymathvariables}{`X}
\DeclareMathSymbol{Y}{\mathalpha}{mymathvariables}{`Y}
\DeclareMathSymbol{Z}{\mathalpha}{mymathvariables}{`Z}
But I think that needs a lot more tweaking.
Apologies in advance to people who know what they're doing and can tell me everything I'm doing wrong.