You've already stated the key point:
1 reaction, which you take when you are hit by an attack or targeted by the magic missile spell.
So what you need to understand here is that the Shield spell involves time travel. No, really, it does. You can cast Shield when you're hit by an attack. Not when you're targeted, or when someone tries to attack you, but when you're hit.
The time travel shenanigans comes into play because the AC bonus of Shield applies to the attack that caused you to cast it. So stealth doesn't apply here, because when the Rogue stabbed the Wizard, it gave away his position. Then the Wizard changed history with the Shield spell.
See here for a similar explanation phrased a little differently. It's easy to understand how this works in terms of gameplay: wizard gets hit, wizard casts Shield, wizard does or doesn't get hit based on his new AC including Shield. How it works in-game is, well, magic! (Alternatively, if you prefer, A Wizard Did It.)
Your ruling is correct.
The effect of shield ends at the start of your next turn, which is the next turn you take. Your ruling #1 is correct.
There are many spells which have a listed duration of 1 round, 1 minute, 1 hour, or so on with a trigger listed in the text that causes the spell to end before that duration is reached. Although we might prefer the spells listed their duration as "up to 1 round," "up to 1 minute," or so on, the implication is indeed that that duration is a maximum limit. So the listing of a 1 round duration does not contradict the listing of an ending condition triggered by the start of your next turn.
Justifications for this ruling.
Each time a creature's turn ends, the next creature's turn begins. So your next turn is the occurrence of your creature acting following the last turn you took, whether or not a full round of turns has elapsed. This is the logical consequence of Jeremy Crawford's clarification on the flow of turns (see this tweet):
When your turn ends, the next person's turn starts.
Without going into a needlessly formal proof using the well-ordering principle, Crawford's statement establishes that your next turn is defined by the ordering of the turns as they elapse, not by the quantity of turns that have elapsed.
Also, a stated design intent in 5e is that words should be read according to their idiomatic meanings. In English, "your next turn" means "your next turn," not "your next turn or after 1 round, whichever is sooner." The simplest interpretation is both intended and correct.
Why it is a good Level 1 spell.
Your friend's reasoning that shield is weak is fairly unsound, and ruling #2 is neither necessary nor supported by the rules.
It's not that you're losing future time on the duration of the spell if you cast it too late in the round before the start of your next turn. You are de facto protected from all attacks for a whole round between any one of your turns and your following turn by (A) the reaction casting of shield mid-round, by (B) the ongoing spell effect after that until your following turn, and by (C) the threat of what we might call "potential shield" before it was actually cast (since before you cast shield there were probably no attacks that targeted you anyway and for the entire round enemies may have chosen not to attack you due to knowledge that you possess the potential to cast the shield spell).
In my experience in games in which I have been a player or a DM, squishy casters like Wizards have used it at least once but usually twice per session. Now note that a +5 bonus to AC is more than what any mundane armor or rare magical armor can confer and it can often be relied upon for most of the attacks that target you for a whole encounter due to the spell slot and action economy. You even get to wait and see if an attack would hit you before you choose to use it.
Therefore, I assert that it is a plenty powerful and comparable Level 1 spell with good utility. It does not need to be fixed. Stick with your correct ruling.
Shield prevents damage from Magic Missile. It also boosts your AC, potentially preventing damage from any other attack as well.
In 5th edition, armor class (AC) is used to protect against any attack requiring an attack roll (melee, ranged and magic).
I think the confusion comes from the fact that some spells do not require attack rolls, and yet still inflict damage. Fireball for example does not require the caster to make an attack roll, so your armor class cannot protect you from the damage. Fireball, instead, requires the target(s) to make a saving throw.
Dragon's breath works the same way. It requires the targets to make a saving throw, and does not require the dragon to make an attack roll. As a result, the shield spell will not help you.