Middle game issues part 2

After dxe5, dxe5, Nxe5 would lose material, so they would have to move the f6 knight. If they play Ng4, I play h3 moving it again. Ne4 is a blunder, so they move it to d7 or h6 (g8 would prevent casting).
After that, I play d5 to kick the other knight, following the same logic but mirrored.

Then, I would have to move the c2 bishop and they would move the f6 knight out of the way.
d5 first would be better.

Good Positional Chess, Planning & Strategy Books for Beginners and Beyond...
https://www.chess.com/blog/RussBell/introduction-to-positional-chess-planning-strategy

I don't think you missed anything, and when looking at the position it looks like your opponent was developing quickly. You both are the same number of moves from completing development, and black can castle next move if they want to. It is unlikely when your opponent can castle next move, and is just as developed as you are that you can punish not castling. You would need a way to prevent castling to try to exploit that, and none of the pawn breaks can force that. If black was not developed, or could not castle right away then there would be more likely of a chance to exploit it. Your move of Bg5 is a good move. Bf4 is also good increasing control of the e5 square, and increasing control of the center. If an opponent is well develop (which black is in this position) it will be hard to exploit a king in the center due to the fact that they can defend with their pieces, and trade off those pieces in even trades to mute your attack.
Your question of is exploiting an king that is not castled as a reliable strategy or not. It is a reliable strategy just not in this specific position. You would need to be ahead in development or be able to prevent castling to exploit it. Also black has not ignored any of the goals of the opening completely. The main one that may pose a problem for them is not having enough space in the center, but it looks like they are probably trying to go for a counter attack in the center although I don't think their pieces are in the best position to do that (mainly the Knight on f6 which may need to relocate to do that after castling). That being said most of blacks pieces are in position to counter attack the center, and at least try to contest the center (even if you have better control of it).
I would have played Bf4 or Bg5 in this position. Bf4 as mentioned earlier controls the e5 square more, and will make it difficult for black to play e5. Bg5 (the move you played is also good as it may induce h6 which can create a potential weakness in front of blacks king should they castle, and then playing Bh4 or Bf4 to keep some tension in the position, and a potential trade or sacrifice to attack the castle king if you a position to do that in. Bh4 would allow a trade on f6 when you want to (ie. when you have enough pieces attacking the h7 square to possible checkmate the king or exploit a lack of protection). Bf4 could allow for a potential sacrifice on h6 for two pawns, but if you the queen and one of two other pieces in the attack it could prove fruitful.
Hope this helps.

White doesn't appear to have any particular advantage in that position. Development is roughly equal and Black can castle whenever the center starts getting too hot for him.
White's c1-Bishop and a1-Rook lack useful employment, and White's Queen and f1-Rook are also on sub-optimal squares. The c2-Bishop is a bit insecure.
As White, I would be tempted to just play h3 intending Be3. Then perhaps Qe2, bring the two Rooks to the c- and d-files, and drop the c2 Bishop back to b1.
Just improve the position of your pieces.
Earlier today, I played this game as White over the board in a tournament. I felt reasonably comfortable with the position since I had pawns in the center, my king was castled, and almost all of my pieces were developed. I noticed that my opponent had not castled yet, and I felt it was time to break in the center with my pawns.
However, I spent a significant amount of time deciding on my next move. My dark-squared bishop was still undeveloped, and I wanted to connect my rooks before initiating any action. The challenge was finding the right square for the bishop, I didn’t want to block important files for my queen and rooks in the future. Eventually, I moved on Bg5.
I realize that Bg5 didn’t actually punish my opponent for not castling or create any significant threats. However, due to time pressure, I ended up playing it just to make a move.
I’m curious about how I should have approached this position. Was my idea of punishing my opponent for not castling reasonable, or is that an unreliable strategy? Were there any more obvious moves or plans I might have missed in this position?