West Indies were 44 for one in response to England's commanding 514 for eight declared, a deficit of 470 runs, when rain brought the second day's play to an end early in the third session.
Cook's 243, his fourth Test double century, was essential to England's total and the former captain's dismissal led current captain Joe Root to declare.
That left the West Indies with a difficult nine overs to bat in twilight before the tea interval.
That was time enough for opener Kraigg Brathwaite to be left for a duck off Anderson.
Kieran Powell had made just two when the usually reliable Ben Stokes dropped him in the gully off Stuart Broad.
But by the close, Powell was 18 not out while Kyle Hope, in at nought for one on Test debut, had made a heartening 25 not out for the tourists.
However, by that point both Cook and Anderson, England's leading Test run-scorer and wicket-taker respectively, had made powerful contributions.
England resumed in an imposing position of 348 for three in the first of this three-match series and the 50th Test at Edgbaston.
Cook was 153 not out, an innings that had already seen him increase his record tally of England Test centuries to 31.
Notably it was also Cook's first Test hundred in 17 innings and the 32-year-old left-handed opener's tenth score of 150 or more at this level.
Along with Root, who made 136 after winning the toss, he'd put on 248 for the third wicket.