A number of possible answers come to mind.
1) It might simply be a way of identifying a deadline. Paul's future plans (he wanted to travel to Rome, and beyond) meant that he needed to be in Jerusalem by a certain time, so that other factors would line up. Beside this, Paul had apparently committed himself to a vow (Nazarite?) which he completed by having his hair cut off (Act.18:18; cf.Num.6:13), and which required his informing the religious authorities who monitored such matters (see Act.21:24-26).
2) It may be that Paul needed to see certain people in Jerusalem. This was a feast day, and the city would have thousands of visitors (as in Act.2). Devout persons always attempted to make the required feasts of the Jews. Paul might be hoping to see people he knew, and might never see again (cf.Act.20:25). He might have wanted to preach to the masses of Jews (which he got to do, only not exactly in a way he might have wished, see Act.22). Perhaps the church had scheduled a meeting which they planned for these days of general gathering which Paul planned to attend, see Act.21:18ff.
3) It may be that the Spirit alone was responsible for urging Paul to be in the city at this particular time, so that all would follow according to divine plan (see Act.19:21; 20:22-23). Because Paul heeded the Spirit, he ended up in Rome, and that on the Spirit's schedule, and not what Paul may have thought initially.