На части какого размера надо порезать объект: 
const chunkSize = 10;.
Режем:
const arr = [];
let i = -1;
for (const k in obj) {
  const j = (++i / chunkSize) | 0;
  (arr[j] = arr[j] || {})[k] = obj[k];
}
или
const chunked = (data, chunkSize) =>
  Array.from(
    { length: Math.ceil(data.length / chunkSize) },
    (n, i) => data.slice(i * chunkSize, (i + 1) * chunkSize)
  );
const arr = chunked(Object.keys(obj), chunkSize).map(n => {
  return n.reduce((acc, k) => (acc[k] = obj[k], acc), {});
});
или
function* chunked(data, chunkSize) {
  const iter = data[Symbol.iterator]();
  for (let chunk = [], n = {}; !n.done && (n = iter.next());) {
    if ((n.done && chunk.length) || (!n.done && chunk.push(n.value) === chunkSize)) {
      yield chunk;
      chunk = [];
    }
  }
}
const arr = Array.from(chunked(Object.entries(obj), chunkSize), Object.fromEntries);