The issue is that your final solutions don't actually contradict each other; you're just getting mixed up between AND and OR statements. You're assuming that all the statements are 'and's, but they aren't necessarily.
Firstly, assume (as you did) that both sides are positive (or zero). Then, you have:
3x2 >= 0 AND 2x+3 >= 0 AND 3x  2 >= 2x + 3
simplifying to x>=2/3 AND x>=3/2 AND x>=5.
which simplifies to x >= 5.
But, as you know, that assumption we made isn't the only case. Another case is that left hand side is positive, RHS negative.
3x2 >= 0 AND 2x+3 <= 0 AND 3x  2 >= 2x  3
x >= 2/3 AND x <= 3/2 AND x >= 1/5
Note that this leads to a contradiction; there's no values of x which satisfy all three of those statements. So, the second assumption was just never true.
as for the other two assumptions:
LHS<=0, RHS>=0
gives 3x2 <= 0 AND 2x+3 >= 0 AND 2  3x >= 2x + 3
x <= 2/3 AND x >= 3/2 AND x <= 1/5
hence, 3/2 <= x <= 1/5
LHS<=0, RHS<=0
gives 3x2 <= 0 AND 2x+3 <= 0 AND 2  3x >= 2x  3
x <= 2/3 AND x <= 3/2 AND x <= 5.
hence, x <= 3/2
Now, since all of these were assumptions, any one of them could lead to a solution. So now, we use OR statements, giving us our answer of x >= 5 or 3/2 <= x <= 1/5 or x <= 3/2
...simplifying to x >= 5 or x <= 1/5
When to use AND and when to use OR requires a bit of intuition sometimes; I'm not quite sure how to explain it. Plus I remember there was a problem I once did where this way of thinking didn't work out; something involving the range of arccos(x^{2}) from memory, but I don't remember.

At any rate this isn't the simplest way of doing the above problem; it'd be much easier to just graph both of them and do it visually. Or failing that, you can recognise that both y = 3x  2 and y = 2x + 3 are continuous functions, solve them equal to each other which tells you at what points they cross and just use intuition once again to work out which one is on top at a given value of x.