The equations are not consistent, dimensionally. b - (14.14 + 14.14·i) is measured in volts, so it's not a current. The problem, like in your previous attempt, is trying to measure the current through V3 using some variation of Ohm's law.
Since V3 is from a to b, you are given the fact a - b = V3 as a present, so that should be one of your equations. Now take the two nodal equations, one for a and one for b, and use them to obtain a single equation in 'a' and 'b' with the current through V3 removed. There you have two linear equations in a and b, which solve the problem.
Edit:
Anyway, I've solved the problem both in mesh and node, and got the same results:
I1 = 16.81123818 - 22.87925079 J
I2 = 25.96293849 - 40.15475552 J
I3 = 18.05884700 - 22.0959085 J
I4 = 28.79136562 - 42.98318264 J
a = 86.37752364 + 45.75850157 J
b = 72.23538800 + 31.61636595 J
------
Mesh equations (using Maple):
eq1 := 0 = -120 + 2*I1 - (5*I)*(I1-I2) ;
eq2 := 0 = -(5*I)*(I2-I1) - (5*I)*(I2-I4) + (4*I)*(I2-I3) ;
eq3 := 0 = (4*I)*(I3-I2) + 4*I3+120*I ;
eq4 := 0 = -(5*I)*(I4-I2) + (1+I)*(20*sqrt(2)*(1/2)) ;
evalf(solve([eq1, eq2, eq3, eq4]));
{I1 = 16.81123818-22.87925079*I, I2 = 25.96293849-40.15475552*I, I3 = 18.05884700-22.09590851*I, I4 = 28.79136562-42.98318264*I}
To get voltage at nodes a, b, we compute:
a = 120 - 2*I1 = 120 - 2*(16.81123818-22.87925079*I) = 86.37752364+45.75850158*I
b = 120*I + 4*I3 = 120*I+4*(18.05884700-22.09590851*I) = 72.23538800+31.61636596*I
-------
Now for the node, we have three equations:
eq5 := a - b = (1+I)*(20*sqrt(2)*(1/2)) ; # V3 is a current source from b to a.
eq6 := (120-a)*(1/2) + k + (1+I)*(20*sqrt(2)*(1/2))/(5*I) = a/(-5*I) ; # Node a.
eq7 := (120*I-b)*(1/4) = k + b/(4*I) + (1+I)*(20*sqrt(2)*(1/2))/(5*I) ; # Node b.
evalf(solve([eq5, eq6, eq7]));
{k = -28.79136562+42.98318264*I, a = 86.37752364+45.75850157*I, b = 72.23538800+31.61636595*I}
Note that the current k through V3 is -I4 in the mesh analysis.