This was FAR trickier than I thought it would be! The final resolved grid looks like this:
There is only one legal position for YUDHOYONO, one for WIDODO, and one (after that) for JOKO - place all of these. Also black out the spaces either side of the Y's - there are no others in the word list.
Next note that there are four legal positions for SOEHARTO and SOEKARNO ("."), two of which ("?") are also legal positions for SOEKARNOPUTRI. There are also only two legal positions for INDONESIA ("#"), noting that it cannot use the rightmost O in row 14 (which would block both of the only 2 legal positions for SOEKARNOPUTRI).
It's important at this stage to realise that with only 12 O's on the grid and 15 in total among the word list we will have three crossovers involving O's. The placement of INDONESIA requires an O-crossover (with either JOKO or WIDODO). This means it is then impossible for the SOExARxO words to occupy both the 'across' position in row 14 and the 'down' position in column 11 (which would require all 3 O-crossovers). Thus there must be a SOExARxO word in row 5, and the word in column 14 must begin SOEAKARNO (because of the 'N' in YUDHOYONO).
Note also at this point that there are three potential positions for SUSILO ("!") and we can shade some more squares where we know it is impossible for a letter to be.
Next try to place the two 11-letter words, BACHARUDDIN and ABDURRAHMAN. There are only a few places on the grid where these words might fit:
If we consider what would happen if we placed one of these words across row 1 we soon find that we cannot fit the other one into one of the columns. As a result, the two words must occupy columns 8 and 10.
This has the knock-on effect of finalising SOEHARTO as the word in row 5, removing the space in column 11 from consideration for SOEKARNO, and fixing row 14 as either SOEKARNO or SOEKARNOPUTRI. We can also shade out some more impossibilities...
Next, try to fix the position of MEGAWATI. Due to neighbouring words there are only a handful of positions in which this might fit:
However, we can rule out all of those along the edges. It cannot be in column 1, since it would have to cross over with one of WAHID, IDN or INDONESIA to be connected to the grid. WAHID cannot use the W space at the start of row 13 (not enough space for the word), INDONESIA cannot start in the bottom-left corner, and if IDN starts bottom-left this will be no use at all to us for connecting to the rest of the words! MEGAWATI also cannot be in row 16 or column 16 since it would have to link in to the other words with the final I from SOEKARNOPUTRI (but this cannot occupy one of the required spaces), the final A from INDONESIA (similarly) or the final E from HABIBIE (ditto). Thus by deduction, MEGAWATI goes in row 11 and also fixes the position of INDONESIA in row 16. More black spaces can be added for impossibilities.
What about SUSILO then? If it occupied the possible position in column 3, the only word it could cross over with to connect it to the other words is JUSUF (via the S)... but then JUSUF cannot connect with any of the others (it has no letters at all in common with any of those as yet unplaced)! Thus SUSILO must occupy column 5.
This also has an interesting knock-on effect - now the entire top-left corner is unreachable by any other word! We can shade it all out.
Okay, let's look at a few other words and where they might fit... First, there are two possible positions for HABIBIE (yellow):
There are two possible positions for BAMBANG (red - orange where it overlaps with HABIBIE):
And there are two possible positions for JUSUF (blue - green where it overlaps with HABIBIE):
It is impossible for the 3 words not to use the bottom right corner because of the overlap between the yellow HABIBIE and the blue JUSUF top-right, which means that we can finally determine that SOEKARNOPUTRI must occupy row 14, since at least one of these 3 words depends on that.
What's more, this fixes the position of BAMBANG in column 1, since the newly positioned I from SOEKARNOPUTRI in column 16 now rules out column 16 as a possibility.
Now we have just two legal positions for WAHID (remembering that all words must be connected to each other). Let's re-use red for this word:
Now we see that the blue JUSUF must go in column 13, since positioning it at the end of row 2 would cause both the red WAHID and the yellow HABIBIE to occupy the same spaces in column 16 - an impossibility.
There is now only one way to fill in HABIBIE and WAHID which allows IDN to be placed also. WAHID must occupy row 1, HABIBIE column 16, and then IDN can be slotted in at the top of column 12. The puzzle is finally solved and now we can all go out and celebrate Indonesia's Independence Day... if our country's coronavirus restrictions actually permit this, of course!