In 2012, other states moved their primaries earlier in the season. Iowa and New Hampshire moved earlier as well so as to stay first. That's how they ended up starting at the very beginning of the year. Getting the primaries to start in February instead was considered a triumph of national coordination.
The national committees can take away a state's ability to send delegates to the convention. So states that try to jump the gun can lose their chance to participate meaningfully at all.
As to why Iowa and New Hampshire, a big part is that they've been doing it and have produced successful candidates. The kinds of candidates that can do well in those two states tend to be able to succeed nationally. They each tend to winnow out certain types of candidates. For example, Iowa is known as a conservative state with a high number of evangelical voters. So Cruz's success in 2016 in winning that section of the vote is likely to push out two of his competitors for that space: Santorum and Huckabee. Carson may last longer.
There are strong advantages to candidates winning early so that they can concentrate on the general election. Iowa and New Hampshire have historically been successful in winnowing out the more marginal competitors. The national committees are likely to oppose changing this unless they see a reason why this success would not continue.
Note that Iowa and New Hampshire are both relatively small states. This allows decisions made there to be low impact in real terms. They primarily affect the nomination in terms of people's impressions of the candidates. Larger states that go later will have more real effect on the nomination. In particular, states that vote in April or later can be winner-take-all states. So a victory by one vote gives all the delegates for that state.
Iowa's small number of delegates divided among multiple winners will have little effect later. Especially since these delegates don't go to the national convention but will later select the actual delegates that go to the national convention.