What you need to understand is that Euler is a poor method to use. Easy to write, easy to understand. But is it good? NO. And this is why you should not be writing code to solve numerical methods problems. You want to UNDERSTAND those codes, yes. But then for any real work, you need to use tools like ODE45, ODE15S, etc.
Regardless, look closely at the code you wrote.
fv = @(t,y) t * sin(-y) + cos(t)./(t+1);
y(i+1)= y(i)+ h * fv(y(i),t(i));
Do you see a difference in how you call fv, compared to how you defined the function? You swapped y and t around.