As you've discovered, an electric motor is not well modeled as a resistor, and as such doesn't obey Ohm's law.
A better model for a DC electric motor is there is some resistance in series with a variable voltage source.
Additionally, a battery has some internal resistance, which can be modeled as a series resistor*. A PC power supply also can use this same model, but the series resistance is likely to be smaller. The system then looks like:
simulate this circuit – Schematic created using CircuitLab
We can explain why in the first case your measured voltage is less than the no-load battery voltage because we have a voltage divider. Doing some math,
\begin{align}
V_{emf} = V_+ - I R_m\\
R_s = \frac{V_{bat} - V_+}{I}
\end{align}
You measured \$R_m = 3.5 \Omega\$, \$I = 0.19 A\$, and \$V_+ = 2.9V\$, so \$V_{emf} = 2.24 V\$ and \$R_s = 1.47 \Omega\$.
In the second case, \$V_+ = 4.92V\$ and \$I = 0.28A\$. Thus: \$V_{emf} = 3.94 V\$ and \$R_s = 0.43 \Omega\$.
Notice that \$V_{emf}\$ is different between the two. This is because \$V_{emf}\$ is roughly linearly proportional to how fast the motor is spinning. You should have observed the motor spinning faster when hooked to the 5V supply.
Additionally, how multi-meters measure current is by introducing a series shunt resistance and measuring the voltage across this resistor. This further complicates the analysis, so the measured current and load voltage are not exactly correlated. It's more difficult to do this analysis, but is possible if you know the series shunt resistance. This is sometimes quoted as a "burden voltage" at a rated test current and you can use Ohm's law to recover the shunt resistance.
It is possible to reconstruct what the measured load voltage should be with just a single meter, but it requires more information on how \$V_{emf}\$ behaves which is beyond the scope of this answer.
If you set your meter to the largest current range this will use the smallest shunt resistance, you can minimize the impact of having the meter in series at the cost of losing a bit of accuracy.
*note: Batteries don't have a constant internal resistance, but this is a reasonable approximation. It depends on a ton of factors including but not limited to stored energy, temperature, and load.
Best Answer
Let's look at Ohms Law \$ V = IR \$
What this means is that the voltage between two points, is the current that is between those 2 points, and the resistance between those 2 points.
In your analysis you did the following: $$ I = \frac{V}{R} = \frac{3.3}{220} = 15mA $$
Since voltage is a potential difference, the 3.3V is with respect to ground. So the two points we are looking at, is the supply rail (3.3V) and ground (0V). The resistance between these two points as initially placed, is 220 ohms. That means that the LED has NO resistance at all. And this is where it broke down. You made an assumption that the LED had no resistance, and it does (it's a weird type of resistance called dynamic resistance - but don't worry about that one right now).
But when an LED has current passing through it, it has with it a forward voltage drop that will approximately be constant. Depending on the color of the LED, it will have different forward voltage drop. Red led's are about ~2V.
So if we try again with this new knowledge, we can come up with the following:
$$ I = \frac{V}{R} $$ $$ I = \frac{\Delta V}{R} $$ $$ I = \frac{3.3V - 2V}{220} $$ $$ I = \frac{1.3V}{220} = 5.9mA $$