I may not solve your problem with the following approach, but I am fairly certain that the current implementation is overwhelming to the user. It adds a lot of performance issues. It is also hard to comprehend if I want to have a look at more data in one go.
Let us start with 80:20 rule.
When I design something, I generally make sure that my solutions perfectly fits 80% of my users or 80% of their requirements. Although I do not ignore the remaining 20%, I try to provide workarounds or alternatives to meet their needs without significantly impacting the streamlined system built considering the 80%. In other words, I tend to design for probabilities and not possibilities. This pretty much answers your worst case scenario of 1000 fields at one point on UI. Definitely 1000 fields will create multiple bindings on Angular and would be a huge performance hit too.
Establish an Information Architecture or Hierarchy.
Naturally, it is not necessary to replicate your data structure on the UI. I would try to segregate the possible 1000 fields into categories. I would try to find common traits between them and group them accordingly. This will provide my first level of filtering. I will bring the fields to manageable set and probably show those in editable grid (say, contact information). I am not sure in your case, but generally your core data which you manipulate and edit has a lot of attributes and modifiers which help you enrich the data, but you can drill down to your absolute core. I just took an example of contact information.
A User Roles System
As you mentioned that there would be 1000 fields which you need to act upon. I have a gut feeling that not all 1000 would be editable for all the type of users, all the time. An effective user role management will help you segregate the responsibilities and design the Information Architecture better for each user role.
View Options
Also, based on the Information Architecture, you can come up with sets of views with which you want to present the same data. With this approach you can still allow editing of all the fields without the performance hit. For example in a loan processing systems, a user might be interested in working on contact addresses management, a contact EMIs and finances management, various branches and nodal offices management etc. These and many other views will have specific fields grouped together offering your users a way to maintain context and work on smaller chunks of data at a time. This should help improving the overall performance too.
Strong Search
You could augment the system by providing an advanced search using the knowledge of dependencies between various fields. This will help user to get a manageable data set to work with at any point of time.
My suggestions may not solve your specific problem, but all of them have a common trait. I am trying to classify your data to make it less overwhelming to the user, and less taxing on the system. I am sorry if I am way off mark, but if you can explain your system more in comments, I might be able to edit this answer later.