Seamers Steven Patterson and Liam Plunkett took four wickets each to leave the hosts in trouble with a day to go.
At stumps on day three Middlesex were struggling at 137 for four in their second innings, still 78 runs behind Yorkshire, who have been in total control of this match since posting 390 in their first innings.
Leg-spinner Adil Rashid, who was not needed to bowl at all as Patterson, Plunkett and Ryan Sidebottom shared Middlesex's first-innings wickets, took three for 51 in the third day's final session to keep second-placed Yorkshire on course for the victory which would put them on top of the Division One table.
On a day when 17 wickets fell at Chester-le-Street, Mark Stoneman passed 50 for the seventh time in his last 10 Championship innings for Durham against Warwickshire.
The left-handed opener rose majestically above a dismal team effort to score 83 out of 127 before he was seventh out and Durham closed on 152 for eight in their second innings, leading by 210.
Warwickshire earlier went from 59 for one to 116 for seven before a stand of 72 between Jeetan Patel and Keith Barker helped them to 209.
Mike Yardy held Sussex's batting together with 69 as the Championship leaders were kept in check by a persevering Surrey attack at Arundel.
Although several batsmen got starts, only Yardy (69) went past 50 as Chris Tremlett and Tim Linley shared four wickets with the second new ball, Linley ending up with four for 68 as Sussex were bowled out for 295.
Surrey's openers Rory Burns and Arun Harinath survived four overs unscathed to reach one without loss at stumps.
Despite play being restricted to just 16.5 overs Nottinghamshire fought back strongly on the second day against Derbyshire.
With Andre Adams (three for 57) removing both Wayne Madsen (74) and Shivnarine Chanderpaul (87), the visitors slumped from their overnight position of 245 for two to reach 306 for six before heavy showers brought a premature close.